You are exactly on the right track - you can send MIDI by macros.
https://www.avolites.de/wiki/macros:example:midinotes gives a good example for this, and the Wiki holds many more useful information and links.
The problem at the moment is that there is no mechanism in Titan to automatically send MIDI when a button is pressed. Additionally, macros can only be set on individual handles or in cuelists, but not in single-cue playbacks. Thus, the only useful way at the moment (as far as I can see) is storing the cue itself somewgere else, and triggering a macrothich does both, sending MIDI, and triggering the cue. That's why I am eagerly waiting for an implementation of MIDI feedback.