Oi Pablo,
Na realidade só consigo ver vantagens. No seu caso, já que COM está envolvido, pontos a mais para XML. XML é o modelo adequado para a transmissão de dados entre componentes de software. Suas outras alternativas seriam arrays, string formatadas ou Recordsets ADO desconectados. Acredito que XML é a melhor opção aqui, mas isto é uma questão de preferência pessoal e um pouco de influência :)
Bem, se vc optar por XML, observe fatores como o tamanho do documento que será passado entre os componentes e a forma de acesso ao documento. Tente manter os dados estritamente necessários no XML e observe as opções disponíveis para a manipulação e transformação dos mesmos. Se o que vc quer fazer é somente transformar de cursor para XML e vice-versa, as funções XMLTOCURSOR() e CURSORTOXML() devem ser as melhores opções atualmente.
Um abraço!