I was having a hell of a time syncing two mailboxes. The old server was running uw-imap from Debian stable and the new server ZCS 3.1.3. After reading this link I thought it would be easy enough. I discovered I needed enable plaintext auth in imapd before imapsync would login to the old server. I also needed to enable plaintext login in Zimbra's global preferences. After that I needed to specify each folder I wanted to sync since the namespace of the two servers was different.
FWIW, the old server is my backup MX and I was syncing mail delivered there when my primary had a network outage. The whole process took a few hours of reading, but was more frusturating because of uw-imap's arcane configuration formats.