IOleInPlaceObject::SetObjectRectsで、インプレースオブジェクトの範囲を指定する。
IOleInPlaceObject::SetObjectRects (oleidl.h) - Win32 apps | Microsoft Learn
概要説明
WebBrowserHost.cppで、
こう書く。

成功はするが、

左上に出来てしまう。
空キャプションの謎ウィンドウの正体。
デバッガでいろいろ調べていくと、

渡されるウィンドウハンドルはあるが、

OnCreateが終ってないので、m_hWndはNULLのまま、

ここも先に呼ばれてしまうし、

ここも先に呼ばれてしまう。
なので、WebBrowserHost.hに、
未確定のウィンドウハンドルm_hWndUndeterminedを追加。
OnCreateで、最初にm_hWndUndeterminedにhwndをセット。
DoVerbのところ、m_hWndUndeterminedに置き換え。
GetWindowも、
GetWindowContextも置き換える。

スクリプトエラーは出るけど、

指定の枠にロードされてる。
空キャプションの謎ウィンドウもなくなり、1つのウィンドウに統合されてる。