How to set a single axes' projection with cartopy.crs when using plt.subplot_mosaic

I am using the method ‘subplot_mosaic’ to create multiple axes, but I want to set one of the axes to be a GeoAxes with a specific geographic coordinate system. this method provides a keyword parameter called subplot_kw, but I doubt that it is called to set all axeses, not the one I selected.

gs_kw = dict(width_ratios=self.wratio, height_ratios=self.hratio)
        fig, ax_list = plt.subplot_mosaic(self.grids,
                                          gridspec_kw=gs_kw,
                                          figsize=(10, 8),
                                          constrained_layout=True)

There is unfortunately no way to do this at this point very easily. I think at this point, the only way is to get the subplotspec from the existing Axes , remove the Axes, and the re-add a new one with the parameters you want, i.e.,

gs_kw = dict(width_ratios=self.wratio, height_ratios=self.hratio)
fig, ax_list = plt.subplot_mosaic(self.grids,
                                  gridspec_kw=gs_kw,
                                  figsize=(10, 8),
                                  constrained_layout=True)
ss = ax_list[0, 0],get_subplotspec()
ax_list[0, 0].remove()
ax_list[0, 0] = fig.add_subplot(ss, projection=...) 

In Matplotlib 3.7, which is not out yet, there will be an additional keyword argument available to allow overriding parameters for a specific subplot:
https://matplotlib.org/devdocs/users/next_whats_new/per_subplot_mosaic.html#per-subplot-keyword-arguments-in-subplot-mosaic