You'll have to create (and preferably pool) multiple SourceVoice instances and play them back simultaneously.
In fact, your current code should work, no? You may want to add a StreamEnd event listener to the SourceVoice to dispose of itself after playback is complete, and remember to enable callbacks when calling the constructor of the SourceVoice.