You may want to have a read of
this[
^] blog post from Michael Sync which details how to work with a databound RichTextBox that supports XAML to HTML and HTML to XAML.
Basically, it works by converting the HTML (where it can) into XAML. Superficially HTML resembles XML, but it's not - the only real resemblance is that they both support tags and the <> characters. As HTML is not as strict in its well-formed nature as XML, it cannot be converted using XSL.