So long as the hardware has multiple stereo ports, and its supplied driver can open more than one of them, you do not need DirectSound. The wave callback function is called, being passed the handle for the port that called it. So long as you pass that to whatever code is filling your buffers for you, it can put the right data in them.
Syncing between ports will be handled easily because each will be ready for new data in the same sequence the first lot got sent out. Most hardware will force all ports to the same sample rate, but for laser control and anything that wants them synced accurately, that's ideal. I'm not sure that DirectSound will make any difference here, it's down to the hardware and its own driver, whether you can handle multiple ports at once. I chose to use Echo Layla devices because they are intended to do this. I get awesome low latency, etc, with no need for ASIO, DirectSound, it's all pure C and Win32 API. I'm not making a laser controller, but a synthesiser, but no doubt that applies, it's got very similar needs. Echo's driver notes show that 'multi-client audio', which is their name for using different outputs to different ports at once, can use Wave for one port, ASIO for another, DirectSound for yet more, etc... So you can mix and match programs/outputs and ports, but all must be at same sample rate, and this is a driver and hardware capability, I doubt DirectSound can override the hardware driver and make it use multiple ports if it can't do that anyway.
(Caveat Emptor... I haven't built multitimbrality into my synth yet, haven't actually done what I said would work! Just so you know.
Got to be honest about that. But a look at the existing callback function makes it very clear that standard API can handle multiple ports, so long as driver and hardware can.)