It sounds like your real issue is not the dependency itself, but rather concern over the 'packaging' (having to ship three assemblies and requiring linkage to more than one assembly by the end-user.) In these scenarios, you might consider using ILMerge to combine your assemblies into a single DLL. This allows you to use proper decoupling in your projects while still having the convenience of shipping only a single file for your library. This is a very commonly used strategy by vendors of third-party libraries.
There are also various commercial tools available that can perform this process and do other things like obfuscation, license enforcement, etc. but it's unclear whether that's really necessary for your application.