Not all carriers support WAP2, or populate the service book with the WAP2 UID.
I think the first thing is to use CoverageInfo to determine if you have BES connectivity - this should be your first choice.
After that, try the WAP2.
If WAP2 fails, you'll need to fall back to WAP1 or direct TCP. Both of these require carrier-specific APN or Gateway information to be encoded in your URL parameters. Livelink - Redirection Livelink - Redirection