Оказалось, что повысить производительность можно, сделав 2 шага:
- Добавить trackViewChanges = {false} для MapView.Marker
- shouldComponentUpdate для маркера
<MapView.Marker
coordinate={{ latitude, longitude }}
tracksViewChanges={false}
>
<View> ... </View>
</MapView.Marker>
shouldComponentUpdate(nextProps) {
return nextProps.latitude !== this.props.latitude && nextProps.longitude !== this.props.longitude;
}