Hmm. If the system uses COM to send XML, it cannot be that much of a legacy, is it?
In any case, the perfect way to do this would be to use SOAP:
1. Write VB or C++ program/component to run on the legacy system to intercept the outgoing COM call that is sending the XML
2. Wrap the XML in SOAP envelope.
3. Have it then open an HTTP connection to the MacOS X box and send the XML over as HTTP/POST
Of course you'll need either a Web server or a socket listener that understands HTTP/POST to get the actual XML out.