Jesús Rodríguez has published a great article on a technique for invoking orchestrations from custom code using the same approach adopted by the Start Orchestration shape. This is the first time I have seen information on using the undocumented MessageAgent functionality in BizTalk. You will find the article here.
BizTalk Server 2004: Invoking orchestrations in custom code
by community-syndication | Jan 9, 2005 | BizTalk Community Blogs via Syndication