機能しませんという意味は、「チェックしてもマイコードのみにならない」「チェックしてないのにマイコードのみになる」のどちらでしょう?
挙動から推測すると前者として。
なぜとの疑問に対して、この挙動は明文化されてないのでよくわからないのです。
手元の環境では、
- 「オプション->デバッグ->マイコードのみを有効にする」のチェックを外す
- 「オプション->デバッグ->必要に応じてソースに自動的に逆コンパイルする(マネージドのみ)」のチェックを外す
- 「オプション->シンボル->シンボルキャッシュを空にする」
までやると逆コンパイルされたコードにステップインされなくなります。
キャッシュを空すれば動作しなくなるという事からすると、キャッシュが有ったらマイコードのみであってもキャッシュされたソースを見に行ってしまうのでしょう。