This is actually a feature most people want. (I know, I know, it's hard to believe...)
What is actually happening is the Mitel is waiting for answer supervision. If it doesn't get it then it follows the forwarding of the phone that was called.
A couple of ways around this. Send the calls out loop start trunks. These trunks will not provide answer supervision so the call will do as you asked. This means you have to have loops start analog trunks in the system and special routing will have to be made to route those types of calls out those lines - not simple if you don't work on these lines normally.
Secondly, in the COS of the trunks and phone, set the call forwarding timer to be longer than the time it takes the cell phone vm to answer. Then when you get the cell phone VM you have answer supervision and the call won't be pulled back. You may have to lengthen the system reroute timer in the system options form (this will apply to the second alternative routing). You also may have to remove all call rerouting and use the feature codes to forward Busy/RNA to internal vm if you're going to use that.
Hope that helps.
Ralph
www.Nortelphones.biz