Hi S! It appears that you are having a conversation with yourself.
Deductive reasoning and method-weighing… out-loud. Typing while pondering. 
It’s good… user @Pryme8 does it, and he’s a BabylonJS superstar… actually a scientist… but… on the edge of insanity like most geniuses. You sound the same, in many ways.
First… Use Dynamic Texture - Babylon.js Documentation
The BJS Dynamic Texture has a handy method… called drawText(). It handles much of the legwork that you did… in your code dump of Context2d-based text-on-canvas.
Dynamic Textures are cool… but they can be a bit struggle-ful. Next post… I’ll tell you something cooler.