Stuck at 90% usually is when its pushing down the address book items to the device. If the user has massive amounts of contacts in the Outlook address book, this can take a very long time... With one user I had to let it run overnight.
One way to tell is if you look at the agent log, you'll be able to see whether this is what its actually doing. search for user's email address and "GetPIMItem - "
Also the first line in the logs where its starting the address book sync will tell you how many records the user has in the address book.