I was thinking about contributing to Wine, but I am not experienced with Windows native APIs. There is also a difference in how my library works and how DirectMusic worked originally.
My library uses a "pull"-model, meaning the application must call a function to render more music. DirectMusic was more of an unattended "push"-model where you'd just tell it to play something and it'd set up playback automatically. It'd just play the music in a background thread (maybe even on hardware) and your application could subscribe to certain events (like get a callback on every beat).