TemplateBinding в порядке. Вам нужно как-то установить источник привязки (например, через упомянутый DataContext или просто в Xaml, используя атрибут Text), но я не могу судить, в чем проблема, поскольку вы пропустили этот код.
Я не знаю, какова цель этого класса, но, возможно, добавление некоторых функций в стандартный PasswordBox. Я хотел бы сохранить обе реализации как можно более похожими. Что я имею в виду свойство Text должно называться Password и т. Д.
Еще одно замечание: представленный шаблон не нуждается в сетке. Если у вас нет дополнительных причин для его использования, удалите его - это просто добавляет сложности макета. Обратите внимание, что шаблон по умолчанию для PasswordBox уже обернут в идентичной сетке ...