Non.
En fait tu as 2 méthodes : Send et Register. La première prend en paramètre un string et un objet et la 2ème prend en paramètre un string et une Action<object>.
Ta première VM s'abonne avec un Register du genre
Code:
Messenger.Default.Register("Navigation", (o) => this.Item = o as Item);
Et la 2ème VM envoie donc un message
Code:
Messanger.Default.Send("Navigation", this.SelectedItem);
Derrière ton messenger récupère les VM qui se sont enregistrées via Register et execute leur Action en passant en paramètre le 2 argument du Send.