Cómo superponer un círculo en un mapa iOS

Tengo un radio y una ubicación.

Así es como estoy tratando de obtener el rectángulo delimitador del círculo.

- (MKMapRect)boundingMapRect{

    CLLocationCoordinate2D tmp;
    MKCoordinateSpan radiusSpan = MKCoordinateRegionMakeWithDistance(self.coordinate, 0, self.radius).span;
    tmp.latitude = self.coordinate.latitude - radiusSpan.longitudeDelta;
    tmp.longitude = self.coordinate.longitude - radiusSpanSpan.longitudeDelta;

    MKMapPoint upperLeft = MKMapPointForCoordinate(tmp);
    MKMapRect bounds = MKMapRectMake(upperLeft.x, upperLeft.y, self.radius * 2, self.radius * 2);

    return bounds;
}

MKMapRectMake(...) Parece que el ancho y la altura se miden en puntos del mapa. ¿Cómo convierto el radio a eso?

Al final lo estoy mostrando así:

MKMapRect theMapRect = [self.overlay boundingMapRect];
CGRect theRect = [self rectForMapRect:theMapRect];
CGContextAddEllipseInRect(ctx, theRect);
CGContextFillPath(ctx);

El radio no parece ser igual a metros en el mapa al final y tampoco parece que la distancia se mida correctamente. ¿Cómo hacerlo bien?

Estaría muy agradecido por cada pista.

Respuestas a la pregunta(2)

Su respuesta a la pregunta