Microsoft не предоставила методы, необходимые для визуализации пользовательского TextElement внутри одного из своих классов документов.Если вы посмотрите на код для Run или Span , то фактического кода рендеринга не будет.Рендеринг выполняется в UIElement , созданных различными внутренними классами (например, FixedTextBuilder).
Из заметок MSDN по FrameworkContentElement :
FrameworkContentElement еще не определяет свое собственное поведение рендеринга;создание экземпляра фактического экземпляра класса FrameworkContentElement в коде или разметке возможно, но ничего не отображается в пользовательском интерфейсе приложения WPF.Логика рендеринга должна обеспечиваться классами, которые принимают дочерние элементы FrameworkContentElement как часть своей модели содержимого или в производных классах FrameworkContentElement.
Не все потеряно, поддержка рендеринга пользовательских элементов Block и Inline обеспечивается посредствомклассы BlockUIContainer и InlineUIContainer .Затем вы можете создать UIElement низкого уровня, который будет размещен внутри фиксированного или потокового документа, или использовать элементы WPF более высокого уровня.