All services are in SICF, you should be able to find the "IDOC" service there .
We still want to exploit the IDoc infrastructure since it provides good visibility of what has happened to messages. (The users want IDocs used rather than Proxies or web services since IDocs provide better visibility of what's going on.)
I wouldn't have said IDOC provide any real benefit in terms of "visibility". Most users just arent aware of the monitoring transactions to use around proxies, there are also additional benefits around proxies in terms of implementation speed and the ability to create sync. scenario's instead of just IDOC async communication. Throw into the mix the additional configuration required around IDOC setup, Partner profiles and so on.
Back to the topic at hand,
I think you will need to use sapjco3.jar and sapidoc3.jar to send an IDOC to ECC from an external source these library's are used by most 3rd party applications to talk to SAP that Im aware of.
I guess you could NOT use them but you would essentially be implementing them yourself.
Good Luck