This has nothing to do with IMAP, but with how Outlook manages calendars and profiles. IMAP does not even support the calendar concept. The only reason why "invites" show up fine is because Outlook interprets them as such, and any actions taken on them are associated with the default Outlook profile calendar.
You cannot associate a specific email address with a specific calendar under one profile. All appointment/meeting requests will always tie back to the default calendar, not any custom secondary calendars created.
If you look, your Calendar is not listed under your abc.com email account. It is on a different node entirely, because email accounts are not tied to Calendars. Additionally, if you set up an Internet Calendar (webcal), you will notice that you have an option to display the calendar on other computers that use the abc.com email address, since that is the main one of the profile. You will not have the option to associate with the xyz.com email address.
I gather this wasn't the answer you were hoping for, but unfortunately, the only way to separate out your calendars per email address as you want is to create a new Outlook profile (instructions here): http://support.microsoft.com/kb/829918