Always feels like it will be simpler... you start with some iPXE, start building, and 6 months later you have a poor imitation of a product like this that works only for your specific use cases and causes you a headache if the company pivots and you have to make it do something new.
Been there, built that. Next time I'm using something with a community, and if it doesn't do what I need, I'm contributing upstream until it does.
Warewulf _is_ the simpler solution.