As for WME9... It was mostly just a shim for
Windows Media DMO/MFT libraries, so if one is just looking to encode video to WMV9/VC-1, the codecs are already installed with Windows - it's just a matter of building the right MF/DShow graphs. Back in its heyday there was
WMNicEnc, which basically did exactly that, and some years later someone wrote
WMAEncode using the same approach for WMA.
The VC-1 encoder in Expression Encoder was based on Microsoft's VC-1 Encoder SDK, which wasn't actually all that much different from the native Windows encoder (wmvencod.dll), at least when it came to producing WMV output. In fact, considering that the native Windows encoder DLL outlived the VC-1 SDK, who knows, it might even be a better encoder these days. I haven't encoded anything in VC-1 in at least 6-7 years.