CreateInstance の後

CreateInstance() の修正が終わっても、まだ new の処理はおわりません。
やっと stub の Invoke() に処理がやってくるのですが、最初の一発は new した直後に呼ばれるメソッド…、当然コンストラクタの呼び出しです。
コンストラクタと他のメソッドの大きな違いとして、呼び出し元コンテキストが異なるらしく、RemotingServices.ExecuteMessage() は例外を出して利用できないのですが、RealProxy クラスのメンバをちゃんと眺めていれば、この問題は即解決です。

public override IMessage Invoke(IMessage msg)
{
  // :(前略)
  IConstructionCallMessage ctor = msg as IConstructionCallMessage;
  if (ctor != null)
  {
    return this.InitializeServerObject(ctor);
  }
  // :(以下略)

見事にコンストラクタの呼び出しが記録され……、まだ終わらないですね。