Кажется, ваш Xaml не предоставил места для взаимодействия с клавиатурой / мышью.Я не совсем уверен, что вы пытаетесь создать, но если вы поместите TextBox в ScrollViewer, ваш шаблон перестанет отображать описанную вами «неисправность» ...
<Border x:Name="Border" Background="{TemplateBinding Background}" BorderBrush="Gray" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="1">
<ScrollViewer x:Name="ContentElement" Margin="0,0,22,0" Padding="5,0,0,0" BorderThickness="0" IsTabStop="False" VerticalAlignment="Center" VerticalContentAlignment="Center">
<TextBox />
</ScrollViewer>
</Border>
Этот фрагмент кода показываетмодификация вашего Xaml, где ScrollViewer содержит TextBox.Событие MouseDown фокусируется на элементе управления, и взаимодействие с клавиатурой происходит, как ожидается.