Welcome to the light, I just completed one of these for a client. What we did (not elegant, they were running an older version of Kerio), was:
1) Used IMAPSync to bring the mail into the new server. You will want to play around with the IMAP settings, but this seemed to work well for us:
2) They were using Entourage, so we subscribed to the their calendars in iCal, exported to a local copy, deleted the shared calendar in iCal, and imported in the local copy.
imapsync --nosyncacls --syncinternaldates --host1 10.0.0.2 --user1 firstname.lastname@example.org --password1 XXXXXXX --sep1 . --prefix1 / --folder INBOX --host2 localhost --user2 email@example.com --password2 XXXXXX --noauthmd5
3) Addressbook - this was kind of a pain, we selected all the contacts in Entourage, choose "Send as vCard" took the attachments, and dragged them to a local folder, we then dragged them into Addressbook
4) iSyncConnector synced everything and they were off and running.
If your clients are Windows clients, you should just be able to export a PST file on the client and use the PST import tool.
Feel free to ping away with questions.