DataTemplate - это шаблон для создания контента. При вызове LoadContent для шаблона он создает содержимое, определенное этим шаблоном. Поэтому, когда вы вносите изменения в TextBlock, он применяется только к этому одному экземпляру контента, а не к самому DataTemplate.
Я предполагаю, что вам нужно сделать это, чтобы сгенерировать привязку на основе свойства, переданного функции. Вы можете сделать это, создав шаблон непосредственно в коде. Это намного сложнее понять, чем XAML, но это должно сработать:
private DataTemplate GenerateTextBlockTemplate(string property)
{
FrameworkElementFactory factory = new FrameworkElementFactory(typeof(TextBlock));
factory.SetBinding(TextBlock.TextProperty, new Binding(property));
return new DataTemplate { VisualTree = factory };
}