I had an issue where one of the dlls referenced in my service layer would not copy into the application’s destination program. This seems to happen because there was no direct usage of this assembly in my service layer. In order to fix this I created a stub class that inherited from one of the classes in the needed assembly its a kluge but it saved me from build scripts and taking another dependency on from the application.
In this case the dll in question was NHibernate.ByteCode.Castle.dll
and the corresponding stub class was
NHibernateByteCodeStub : NHibernate.ByteCode.Castle.ProxyFactory