Just as a data point, I did it differently (I did it before I found the wiki for split domains).
I set up zimbra as a subdomain.
xx@yy.zz.com
I forward any mail for the accounts on the zimbra domain from
xx@zz.com to the .yy.zz.com domain in the mailer setup.
I told zimbra to use the mailserver at zz.com as the outbound relay and I set up the mailserver at zz.com to rewrite any outbound yy.zz.com addresses as zz.com.
It looks ugly, but in all reality the zimbra config was 100% using the web interface and the mailserver at zz.com required one extra line in the config file for the rewrite.
I did it as I intend to only use the zimbra starter edition, and therefore I only want to have people who need mobile access or shared calendars on the zimbra server. The rest stay on the exim/qpopper/dovecot main mail server.