title: String.StartsWith not working with Asian languages?
body: <p>I've noticed this strange issue. Check out this Vietnamese (according to <a href="https://en.wikipedia.org/wiki/Google_Translate" rel="nofollow noreferrer">Google Translate</a>) string:</p>
  
  <pre><code>string line = "Mìng-dĕ̤ng-ngṳ̄";
  string sub = "Mìng-dĕ̤ng-ngṳ";
  line.Length
  15
  sub.Length
  14
  line.StartsWith(sub)
  false
  </code></pre>
  
  <p>Which seems to me like a <strong>wrong</strong> result. So, I've implemented my custom <code>StartWith</code> function, which compares the string <em>char-by-char</em>.</p>
  
  <pre><code>public bool CustomStartWith(string parent, string child)
  {
      for (int i = 0; i &lt; child.Length; i++)
      {
          if (parent[i] != child[i])
              return false;
      }
      return true;
  }
  </code></pre>
  
  <p>And as I assumed, the results of running this function</p>
  
  <pre><code>CustomStartWith("Mìng-dĕ̤ng-ngṳ̄", "Mìng-dĕ̤ng-ngṳ")
  true
  </code></pre>
  
  <p>What's going on here?! How's this possible?</p>