Nothing wrong with what you've done. You may have done more than was needed, but over-engineering is in fact a virtue, no?
Do-more handles all interlocking internal to the driver, so it is possible to hang every MWX/MRX off of the power rail at the top of the program and they just work...however...that does not give you the finer control and error reporting that some prefer, so we also designed them to sequence as you did. Not a thing wrong with tighter supervisory control.