Комментарии в вашем коде имеют ответ. Вместо использования пользовательского метода и вызова addTarget используйте метод делегата calloutAccessoryControlTapped представления карты. В этом методе вы получите ссылку на представление аннотации, которое содержит ссылку на аннотацию.
Удалите вызов addTarget и замените ваш метод "showDetails" на:
- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view
calloutAccessoryControlTapped:(UIControl *)control
{
MyAnnotationClass *annot = (MyAnnotationClass *)view.annotation;
//do something...
}