WPF Validation ErrorTemplate para TextBox personalizado

Ramificação fora deisto pergunta -

Ao anexar um modelo de erro de validação à minha caixa de texto personalizada como esta -

<local:CustomTextBox CustomText="{Binding ViewModelProperty}" Validation.ErrorTemplate="{StaticResource errorTemplate}"/>

<ControlTemplate x:Key="errorTemplate">
    <DockPanel>
        <Border BorderBrush="Red" BorderThickness="1">
            <AdornedElementPlaceholder x:Name="controlWithError"/>
        </Border>
        <TextBlock Foreground="Red" FontSize="20" FontFamily="Segoe UI" Margin="3,0,0,0"  MouseDown="Exclamation_MouseDown"  Tag="{Binding AdornedElement.(Validation.Errors)[0].ErrorContent, ElementName=controlWithError}">!</TextBlock>
    </DockPanel>
</ControlTemplate>

Se houve um erro de validação no ViewModelProperty, meu aplicativo estava lançando uma exceção -

Key cannot be null.
Parameter name: key

Não sei por que isso está acontecendo. Há algo que precisa ser feito para atribuir um novo modelo de erro a um controle personalizado?

ATUALIZAR:

Eu descobri que o problema é com a propriedade Tag no modelo de erro. Se eu remover o Tag, funciona muito bem.

obrigado

questionAnswers(1)

yourAnswerToTheQuestion