Хорошо, я проверил это с помощью следующего кода:
string xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?><xml><value>受</value></xml>";
XmlWriterSettings settings = new XmlWriterSettings { Encoding = Encoding.Default };
MemoryStream ms = new MemoryStream();
using (XmlWriter writer = XmlTextWriter.Create(ms, settings))
XElement.Parse(xml).WriteTo(writer);
string value = Encoding.Default.GetString(ms.ToArray());
И он правильно экранировал символ Юникод, таким образом:
<?xml version="1.0" encoding="Windows-1252"?><xml><value>受</value></xml>
Я должен делать что-то не так в другом месте. Спасибо за помощь.