I think you're right.
I remembered a viewer I've written which hosts Flash out-of-process (for crash isolation and so Flash works even though the main process is 64-bit and Adobe are useless, ahem). When playing a Flash video via that, the mixer shows the icon + description of the out-of-process host exe (description from the exe's resources), rather than the icon/title of the top-level window.
If I switch to another viewer that's in-process and plays sounds, the mixer attributes it to the main top-level window.
All makes sense!
Also makes me realise I should give my out-of-process exe a nice icon. I didn't think it would be shown to the user anywhere until now. 