@jiicee,
What I came up with in a cross forest migration (w2k3/e2k3-->W2k8r2/E2k10).
0. setup secondary email address space on both sides.
1. Run ADMT 3.1 (was in place before 3.2 came out)(with Sidhistory)
2. run Enable-mailuser with identity and alias and externalemailaddress
3. Prepare move request -uselocalobject (key here is Updated the script to search the entire AD instead of looking in the users container or a specified OU)
4. On the Exchange 2003 server- I export all mailboxes use Exchange Migration wizard to password protected PST files and secure the password paster file( this is my rollback/recovery option if needed since source MB gets dumped)
5. new-moverequest command (specify the secondary for e2k10 email address.
6. Miller time.
This process worked well for me- If you do preparemoverequest 1st to create the object- the issue I found is that all SMTP email addresses carry over- and we did not want that- we only wanted the secondary email address for routing.
My only issue-which still remains- some mailboxes are not available for logon for 1 to 3 hours. This is ok since we migrate at night and setup the migration to complete around 2am leaving us about 5 hrs local time until users come in the office.
In our scenario- we also put users in a security group when we migrate them- there is a GPO that is filtered to this group- that has a logon script that runs outlook with the prf switch to create them a new profile- leaving the old profile intact for reference behind the scenes.
Hope this helps.