Reaccione los marcadores nativos de Airbnb: los marcadores desaparecen con éxito, pero no vuelven a aparecer

Actualmente estoy creando una aplicación con react-native y estoy usando el complemento de mapas de Airbnb para mostrar dinámicamente los marcadores. Mis marcadores se descargan de la base de datos de Firebase con éxito, y la matriz que se descarga siempre muestra el contenido correcto. Tengo el código completo aquí por si acasohttps://codepen.io/yeni/pen/Kqyrxv?editors=0010 :)

Cada vez que cambio elcur_user propiedad de un marcador para1, no se muestra correctamente en el mapa. Sin embargo, cuando cambiocur_user de regreso0, el marcador no se muestra (que sería el comportamiento deseado). Mi código se ve de la siguiente manera:

    //Store file MarkersStore.js
    class MarkersStore {
  @observable markers = [];

  constructor() {
      console.log("Started downloading markers");
      var localMarkers = [];
      Fb.bikes.on('value', (snap) => {
        localMarkers = [];
        snap.forEach((marker) => {
            localMarkers.push({
              longitude: parseFloat(marker.val().positionLng),
              latitude: parseFloat(marker.val().positionLat),
              description: "Bike 1",
              title: "b" + String(marker.val().bike_no),
              bike_no: marker.val().bike_no,
              cur_user: marker.val().current_user,
              key: marker.getKey()
            })
        });
        //Once must make sure that the upper command already finished executing!
        this.markers.replace(localMarkers);
        console.log("Loaded markers");
      });
  }

}

    ...
    //Rendering file MarkersComponent.js
    render() {
    var renderingMarkers = this.fbMarkers.markers.slice() || [];
    console.log("fbMarkers are: ");
    console.log(this.fbMarkers.markers.slice());
    console.log("Rendering stuff..");
    console.log(renderingMarkers);
    console.log("Rendering ALL the stuff!");
    return (<View>
      {renderingMarkers.map( (marker) => {
        console.log("Markers are re-rendered");
        console.log(marker.bike_no);
        console.log(marker.cur_user);
        //All console logs up until here show correct results
          return (
            <View key={marker.bike_no}>{ (marker.cur_user == 0) ?
              <MapView.Marker
            navigator={this.props.navigator}
            key={marker.bike_no}
            coordinate={{longitude: marker.longitude, latitude: marker.latitude}}
            title={marker.title}
            description={marker.description}
            onPress={(coord, pos) => this.startBookingBike(marker.bike_no)}
            ><View style={styles.bikeRadius}><View style={styles.bikeMarker}>
            </View></View>
            </MapView.Marker> : null
          }</View>
          );
    })}</View>)
  }

Además, la ejecución automática se activa con éxito cada vez que cambio algunos datos en la base de datos (y se muestran los datos recuperados correctos). ¿Existe alguna forma de poner la función de ejecución automática dentro del método de renderizado para volver a procesar todo con éxito?

** EDITAR ** También he abierto un problema en la página oficial de github, ya que esto parece ser un error. ¡Corrígeme si estoy equivocado! :)https://github.com/airbnb/react-native-maps/issues/1426

Respuestas a la pregunta(1)

Su respuesta a la pregunta