I don't like the idea of returning success when native would fail and relying on this in other parts of Wine. It's possible that an application depends on these image types failing, and we wouldn't be able to fix that application without breaking d3dx10.
We can add our own components that are different from native, like the existing ICNS and TGA format support. One possibility would be to have two CLSIDs for our DDS decoder. It could behave the same as native when invoked with CLSID_WICDdsDecoder, and accept these files when invoked with CLSID_WineDdsDecoder. We could then use CLSID_WineDdsDecoder in other parts of Wine.
Wine-specific COM interfaces could also work.