This thread is ancient, and hopefully you already found your answer, but since this comes up first in a Google search, I figured I better supply the answer here.
You can run the following on the command line on each server to find accounts that are no longer hosted on that server but haven't yet been purged:
It will (the way it's written above) only identify users that actually still exist in your LDAP. If the account no longer exists in LDAP but still has data on that host (i.e. it was moved somewhere else first before being deleted from LDAP) this script won't find it.
for i in `mysql --batch --skip-column-names -e 'select account_id from mailbox' zimbra`; do echo ga $i zimbraMailHost; done | zmprov | grep -v `zmhostname` | grep -B1 zimbraMailHost | grep '^# name' | sed -e 's/^# name //'