MSDNを見てみるとdefaultCharsetプロパティというものを発見。どうやらこれでできそうだと思いましたが、
>The IHTMLDocument2::put_defaultCharset method is not implemented; therefore, the property is read-only.
らしいです。残念。
というわけで、「エンコードを指定して開く」ではなく、「開いてからエンコードを指定する」ことになりますが、回答してみます。
charsetプロパティは直接設定することができます。ただし、これでは「設定しただけ」になりますから、ページを更新して反映させる必要があります。ページの更新(IEでF5キーを押したときの動作)は、IWebBrowser2インターフェースのRefreshメソッドを使えば可能です。
以上をサンプル(web.hsp)に沿って書くと、
pDoc("charset") = "UTF-8"
ie->"Refresh"
みたいな感じです。pDocはIHTMLDocument2インターフェースを、ieはIWebBrowser2インターフェースを指しています。
注意すべき点は、charsetプロパティの設定はページが完全に読み込まれた(readyStateプロパティがcompleteになった)後でないとできないということです。サンプル(web.hsp)では*OnNavigateComplete2以下でIHTMLDocument2インターフェースを取得していますが、このときはまだ完全には読み込まれていません。charsetプロパティを設定するのは必ず*OnNavigateComplete2からreturnした後にしてください。(したがってdelcom命令を消す必要がありますね。)
参考:
IHTMLDocument2::defaultCharset Property
http://msdn.microsoft.com/en-us/library/aa752572.aspx
IHTMLDocument2::charset Property
http://msdn.microsoft.com/en-us/library/aa752566.aspx
IWebBrowser2::Refresh Method
http://msdn.microsoft.com/en-us/library/aa768258.aspx
IHTMLDocument2::readyState Property
http://msdn.microsoft.com/en-us/library/aa752602.aspx