InvariantCultureを使っても、文字列がcodepointで比較されるようになるわけではありません。InvariantCultureのCompareInfoでも、Compare()やIndexOf()は「やわらかく」(←てきとーな表現)行われます。この場合、IndexOf()は対応するCultureInfoのCompareInfoのIndexOf(string, string, CompareOptions)に該当します。CompareOptionsは_たぶん_Noneが渡されますし、IgnoreXXXのいずれのフラグも立っていない状態なので、例のゼロ文字が無視されるのは納得できないかもしれませんが、これは納得できません(何だそりゃ)。Unicode Normalization (UTR#15)では、\u3007はcompositionの対象とはされていませんし(されても困る)、Unicode Collation Algorithmのデフォルトテーブルでも\u3007は無視される文字としては定義されていないので*4、前回書いたとおり、MicrosoftのMichael Kaplanがいうところの「MS仕様」なのかもしれません。