.NET Framework 4.5.2にLivet1.3を導入し、WPFのクライアントアプリケーションを作成しています。この度トリガーの勉強がてら、LivetのInteractionMessageTriggerと同じような機能を持つカスタムのトリガーを作ってみたのですが、目的の場所でTriggerBaseのInvokeActionsを呼び出した時、各ActionのInvokeActionが実行される時とされない時があります。ActionのInvokeActionが実行されるときの条件のようなものはありますでしょうか? 以下が問題のトリガーです。

public class CustomInteractionMessageTrigger : TriggerBase<FrameworkElement>
{
    public string MessageKey
    {
        get { return (string)GetValue(MessageKeyProperty); }
        set { SetValue(MessageKeyProperty, value); }
    }

    public InteractionMessenger Messenger
    {
        get { return (InteractionMessenger)GetValue(MessengerProperty); }
        set { SetValue(MessengerProperty, value); }
    }

    protected override void OnAttached()
    {
        base.OnAttached();
    }

    protected override void OnDetaching()
    {
        base.OnDetaching();
    }

    private void MessengerPropertyChanged(DependencyPropertyChangedEventArgs e)
    {
        if (e.OldValue != null)
        {
            ((InteractionMessenger)(e.OldValue)).Raised -= CustomInteractionMessageTrigger_Raised;
        }
        if (e.NewValue != null)
        {
            ((InteractionMessenger)(e.NewValue)).Raised += CustomInteractionMessageTrigger_Raised;
        }
    }

    private void CustomInteractionMessageTrigger_Raised(object sender, InteractionMessageRaisedEventArgs e)
    {
        if (e.Message.MessageKey == MessageKey)
        {
            InvokeActions(e.Message);
        }
    }

    public static readonly DependencyProperty MessageKeyProperty = DependencyProperty.Register(
        nameof(MessageKey), 
        typeof(string), 
        typeof(CustomInteractionMessageTrigger), 
        new PropertyMetadata(null));

    public static readonly DependencyProperty MessengerProperty = DependencyProperty.Register(
        nameof(Messenger),
        typeof(InteractionMessenger),
        typeof(CustomInteractionMessageTrigger),
        new PropertyMetadata(null, (d, e) => { ((CustomInteractionMessageTrigger)d).MessengerPropertyChanged(e); }));
}

上記コードの InvokeActions(e.Message) にブレークポイントを付けたところ、呼び出されていることは確認できました。InvokeActionsを呼べばActionは必ず実行されるものだと思っていたのですが…

開発環境のOSはWindows 10(1703)、IDEはVisualStudio 2015 Update3です。

情報不足などがありましたらご指摘ください。
よろしくお願いいたします。

11月14日追記:
ここ (https://msdn.microsoft.com/ja-jp/library/dn195735(v=vs.120).aspx) を見たところ、OnAttachedおよびOnDetachingを書いていないことに気づいたので追加しました。また、Messengerが変化した際にRaisedイベントの購読を解除していなかったのでこれも追加しました。しかし問題の現象は依然発生したままです。