import matplotlib
matplotlib.use('module://my_backend')
doesn't work as expected if my_backend's name clashes with one of the modules in matplotlib.backends. In that case the result is confusing (in my case my_backend is called backend_webagg since I was experimenting on it).
get_backend() still says module://my_backend
pylab_setup() returns the module with the same name from matplotlib.backends
I would expect pylab_setup() to return the same module as import my_backend.