Issue updating layers/ basemaps to ipyleaflet component

I am having issues with updating layers & basemaps to an ipyleaflet map in a panel application. Layer updates work in notebooks but there appears to be a ipywidgets_bokeh communication issue preventing updates in browser.

As seen in the screenshot below, the map goes grey when I try to change a layer and I see errors in the console.

I am building an app for submission to the Anaconda contest and am hoping to get some kind of solution figured out in the next week or two, even if it requires some workaround. Any help would be greatly appreciated!

from ipyleaflet import (Map, basemaps, basemap_to_tiles)
import panel as pn
import param


layers = dir(basemaps.OpenStreetMap)
class MapManager(param.Parameterized):

    ls = param.ListSelector([layers[-1]], objects=layers)
    _map = Map(center=(47.4, -122.2), zoom=6, scroll_wheel_zoom=True)

    def __init__(self, **params):
        super().__init__(**params)
        self.param.watch(self.update_layer, ['ls'], what='value')

    # @pn.depends('items.value', watch=True)
    def update_layer(self, selection):
        print('updating layer:')
        print(selection.new[0])

        # create basemap
        bmap = basemap_to_tiles(basemaps.OpenStreetMap[selection.new[0]])

        # clear last layer and add new basemap
        self._map.clear_layers()
        self._map.add_layer(bmap)

        pass
    
    def panel(self):
        return pn.Column(self.param.ls, pn.panel(self._map))

map_mgr = MapManager() 
map_mgr.panel().servable()

Posted as a bug here as well: New layers do not update on ipyleaflet map in panel · Issue #5064 · holoviz/panel · GitHub