This is not a bug as @bghgary confirmed. However, I spent quite some time figuring this out. So may be helpful to others.
Please see here: https://playground.babylonjs.com/#RWE284#1 Comment line 41 to make it fail.
In your scene setup, when you assign a DynamicTexture to a mesh before the scene is ready, you have to call .update() on the DynamicTexture. Otherwise mesh.isReady keeps returning false and therefore scene.executeWhenReady never resolves.