What you're trying to do might require you to get a bit more physical. WINDOWS may not be able to split audio between two output devices, but YOU have the power to split it as many times as you want. Your USB device sounds like it didn't work out the way you wanted it to when you purchased it. You'll have a much easier time getting rid of that and simply splitting your motherboard's outputs with cables you can buy from any large electronics store.
For example: I just upgraded to a Digital Receiver with an option to have either S/PDIF or RCA inputs going to my new speakers. My old speakers take a direct stereo cable connection from the motherboard to their inputs.
In this case both speaker systems are 5.1 channel surround, and both have some form of surround simulation built-in for stereo sources.
The new speakers are connected to the sound board with an S/PDIF cable. Old speakers are connected with stereo cables. This means that Windows is seeing the S/PDIF optical out and my regular 5.1ch stereo outs as separate devices. I want to watch a movie in 5.1 surround, and I want it to come out of both sets of speakers, without using surround simulation on either set.
Sacrificing the digital out (which gets converted to analog at some point before it reaches your ear anyway) and sticking with analogs allows you to trick Windows into thinking it's only sending audio to one device. But how do I connect the analog receiver to the stereo jacks, which are already in use by the old speakers?
3 Stereo splitters, plus 3 Stereo-RCA adapters, plus 3 RCA cables.
even if you have an extra stereo out for headphones, do not use it in this type of setup. Windows will not factor in preamp loss on splitting outputs, which means you'd be messing with volume levels just to save yourself the cost of 1 splitter.
So I'm splitting my 5.1ch stereo out into 2 separate speaker systems. One with 3.5mm input, and one with RCA. Windows thinks it's sending audio to a single speaker system.
Obviously this means I'll have some(50%) preamp loss. Your signal to noise ratio may suffer heavily with this type of setup, depending on the quality of your cables, speakers, and onboard hardware.
The other solution
Take the old speakers (the ones that plug directly into my motherboard with Stereo cables and no adapters) And use a series of adapters to plug them directly into my stereo receiver instead. In this case, I could use Either S/PDIF or Multi Ch RCA in, depending on my specific output needs. Computer games, for example, are not surround encoded; your computer can't send a 6ch signal through S/PDIF, only encoded stereo signals which the receiver then decodes. So for some audio sources I will need true 6-channel output all the way from the mobo to my ears. This particular solution, however, can be risky, especially if you are attempting to split Speaker Cable output. If you aren't, you'll be limited by how many outputs the receiver lets you have at the same time.
The third solution
Plug the old speakers into my mobo, and then plug its subwoofer's RCA outputs into the receiver's multi ch in, instead of into the satellites. The sats then get plugged into the receiver's RCA outputs, while the new speakers stay on their +/- wires. This is essentially using the receiver to do what Windows can't. ALSO risky because now I've got a preamp on my receiver's inputs. Windows preamps the speaker volume at 100% (no splitters this time) and the old speakers' volume will now preamp the receiver volume, which is going out to my new speakers. And, I'm still limited by the amount of outputs my receiver supports at the same time. In my case this is RCA stereo + single RCA sub out == surround data only coming from new speakers, with subwoofer and stereo output reaching the old speakers. Your mileage may vary on this one.
Just make sure to keep your "preamp" turned down as far as possible.
Bottom line: All operating systems have limitations; Not all limitations have workarounds. If you're willing to mess with a few cords, you can do some crazy stuff with audio.
P.S. Upon reading some your comments about what you're trying to do, Ceving, I'd say you have to just look at it backwards. You say you want Starcraft battle sound from headphone and "everything else" from USB speaker. Well, depending on how many things are included in "everything" that's totally doable in software. Set HEADPHONE as main audio device. Then, change MEDIA SOFTWARE's output to USB speaker. You must first tell me what "everything else on speaker" means before I can tell you what specifically you need to change. Basically, everything that ISN'T Starcraft, MUST have an option to play through USB speaker for what you're thinking of to actually work.
Also keep in mind that Windows does weird things with Audio device when it comes to Headphones specifically. If at all possible, don't tell windows that they are headphones, tell it they are stereo speakers. Tell windows that the USB speakers are a separate set of stereo speakers. That'll put you at a starting point. Keep in mind that to play STEREO (2 channel audio) through 2 separate devices in windows, you just need to disable "mute speaker when plug in headphone", plug one set into main jack, one set into headphone jack, and you're good to go. I hope that isn't what you were trying to do cuz that would have been way simple. And I hope you're talking about StarCraftII because Starcraft1 is actually set up in such a way that you get in-game music out of FrontLeft/FrontRight and SFX out of Center Channel when Windows is in a surround sound configuration-- which really is a whole nother explanation altogether.