You don't say if this is happening to BB7 or BB10 devices. I presume in fact you are seeing this on BB10, and as a result your suggestion regarding the test of the user agent being an issue is probably correct.
Have a look at this BB blog for more details:
blackberry-10-user-agent-string
The suggested identification string is: 'BB10' + 'Mobile'
If this doesn't help, perhaps you can identify the BB model(s) and/or OS level(s) that is(are) causing you a problem.
I think there are a number of KB articles on the BB site that describe the User Agent string that will be provided. I can try to hunt some of these out, if you have a specific device and/or OS level.
Update
This phone - Blackberry 8900 v4.6.1.206 - is running an old level of the Browser. At that level you could change the identification, and fake Firefox or Internet Explorer. To see this, start the Browser, click on the menu, and choose Options, from there, choose Browser options, and you should see the "Browser Identification" pull down.
This facility is still present in the Browser for OS 5.0 phones but was removed after that.
If the user makes this change, then they will always see the desktop website.
Just to confirm, I am not suggesting that changing the option to IE or Firefox will fix this problem. it won't. A - but if the user has changed to either, then they will not be detected as a Blackberry and so will see the desktop version. You need to make sure you set this option to BlackBerry.
Further update
I suspect this code came from here:
http://detectmobilebrowsers.com/
If you try this URL in the browser, then it should display the user agent and also tell you if it has detected this as a mobile device. This should give you some more information about this problem. If it correctly detects the BlackBerry, you might look to update your redirect using the code form that site. Link to the site from a desktop Browser to find the code.