I've found the same problem in OS X Lion, with Mail, iCal and Address Book getting confused when two Exchange accounts on the same server are configured, resulting in either missing or duplicate entries (despite everything appearing fine when accessing the accounts individually via Outlook or OWA). iOS doesn't have any problem with this setup; two Exchange accounts on the same server work perfectly; the issue seems specific to Mac OS X.
After some experimentation I've found a workaround. Since the issue crops up with two Exchange accounts on the same server, it seems possible to trick OS X into thinking the accounts are on two separate servers through a little DNS manipulation (which I realize may not be a practical option for everyone). Here's what resolved the issue for me:
- My external and internal DNS FQDNs for the mail server were mail.mydomain.com.
- I set up a new DNS entry - mail2.mydomain.com - as a CNAME for mail.mydomain.com.
- On my Mac, I set up Exchange account #1 with the server set to mail.mydomain.com.
- I then set up Exchange account #2 with the server set to mail2.mydomain.com.
Even though both FQDNs resolve to the same IP, this seems sufficient for Mac OS X to consider them as separate servers, elliminating the problems I had before when I set both Exchange accounts to the same mail server FQDN.
I've only tried this on OS X 10.7 Lion, and the recent 10.7.1 update, although I wouldn't be surprised if the same trick works for earlier versions of OS X.