Multi-machine definition not honoured in embedded Vagrantfile

I am trying to create a vagrant box that launches a cluster of 3 VMs. The Vagrantfile to accomplish this works when this definition is in the Vagrantfile in the CWD. However, when I move this multi-machine definition to the embedded Vagrantfile, vagrant ignores it and creates a default VM, ignoring the named machine definitions.

I read the documentation, which doesn’t say anything concrete about this, only that multiple Vagrantfiles are merged before starting a vagrant box, and that some definitions in the Vagrantfile are added, and some do overwrite, which is not very descriptive.

My first question is if this is intended behaviour.
My second question is if there’s way to make vagrant execute a multi-machine setup with the definition in the embedded Vagrantfile, so that a user can use a simple default generated Vagrantfile.