ICommand no funcionando

Tengo un botón que utiliza un icommand para llamar la operación a realizar, pero este no realiza nada al compilar.

Xaml

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"          xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"          x:Class="appTurismoIqq.Vistas.DetalleEntidadPage"          BindingContext="{Binding Main,Source={StaticResource localizador}}"> <ContentPage.Content>     <StackLayout BindingContext="{Binding detalleEntidad}" Padding="5">   <Button Text="Ver Mapa" FontSize="Small" BackgroundColor="LightBlue" HorizontalOptions="Center" Command="{Binding MapaCommand}"></Button>      </StackLayout> </ContentPage.Content> 

Modelo

    public ICommand MapaCommand     {         get         {             return new RelayCommand(IrMapa);         }     }      private async void IrMapa()     {            //   VistaPrincipal.GetInstancia().DetalleSucursales = new DetalleSucursalVModelo(this);         await Application.Current.MainPage.Navigation.PushAsync(new MapAppPage2(latitud2, longitud2, calle1));      } 

No sé que error podría estar cometiendo, lo que se me ocurre es que el modelo donde estoy colocando el icommand no sea el mismo de la vista pero lo he revisado y si coincide.