Transform XML using XSLT file

public static string TransformXML(string transformXsltPath, string wordDocXml)
        {
            var transformedXML = new StringBuilder();
            XslCompiledTransform xslTransform = new XslCompiledTransform();

            xslTransform.Load(transformXsltPath);

            using (TextReader tr = new StringReader(wordDocXml))
            {
                // Load the xml of your main document part.
                using (XmlReader reader = XmlReader.Create(tr))
                {
                    using (MemoryStream ms = new MemoryStream())
                    {
                        XmlWriterSettings settings = xslTransform.OutputSettings.Clone();

                        // Configure xml writer to omit xml declaration.
                        settings.ConformanceLevel = ConformanceLevel.Fragment;
                        settings.OmitXmlDeclaration = true;

                        XmlWriter xw = XmlWriter.Create(ms, settings);

                        // Transform our OfficeMathML to MathML.
                        xslTransform.Transform(reader, xw);
                        ms.Seek(0, SeekOrigin.Begin);

                        using (StreamReader sr = new StreamReader(ms, Encoding.UTF8))
                        {
                            transformedXML.AppendLine(XMLHelper.RemoveAllNamespaces(sr.ReadToEnd()));
                        }
                    }
                }
                return transformedXML.ToString();
            }
        }