The problem you'll have with this is that the OPL chips weren't really designed for MIDI. They're synthesizers, and to make the most of them, you have to be specific about how you want the sound channels to work. MIDI is an abstraction that, by design, decouples the content from the hardware capabilities. Works OK for more powerful synths, but because of the limited flexibility of the OPL oscillators, and the small number of voices it can produce, it is not an ideal match.
Games that use MIDI (or MIDI-like) music via OPL have had some amount of optimization of either the OPL driver, the music files, the playback engine, or all of the above. If you write the driver to make the voices sound good, you're going to run out of voices very quickly. If you optimize for better polyphony, you can only use the bare minimum of features. That's a balancing act the game's music director will need to fine-tune.
Windows tries, but voice-stealing is a huge problem, and the patch sets (how the voices sound) are usually pretty bland. The best way to play a particular soundtrack is to capture the hardware-level commands sent by the game engine and play them back the same way. As I understand it, DOSBox can capture OPL streams and save them to a file for later playback through something else. I don't know what, under real DOS, exists to play those.. but I'm sure something exists. So that's what I would look into.