You'll want to add an annotation to the map, then provide a custom view for it.
To add an annotation to the map, adopt the MKAnnotation protocol in one of your objects and set its coordinate property to the appropriate lat/lon location.
Next, you'll add the annotation to the map using MKMapView addAnnotation.
Set the map's delegate property to your view controller, then implement mapView:viewForAnnotation:
When this method gets called, return a MKAnnotationView for your annotation. Set the MKAnnotationView's image property to whatever image you want the annotation to use (an image of a button perhaps?).
You can implement mapView:didSelectAnnotationView: if you want to know when the annotation was selected.
You can also set a callout accessory button on the annotation using MKAnnotationView's leftCalloutAccessoryView and rightCalloutAccessoryView properties. If you do this, you can then respond when the user selects the callout button by implementing mapView:annotationView:calloutAccessoryControlTapped:.