Hmm - there are numerous examples of a parent or manager canister dynamically spinning up child canisters in Motoko.
The first example was written in 2021 Mini BigMap library
If you search this forum with the terms “Dynamically create canisters in Motoko”, this is the first result Blog post: Dynamically Create Canister Smart Contracts In Motoko
I’m curious what the implementation blockers were for doing this in Motoko, maybe adding more support for this in the developer docs would have helped?