So after quite a bit of acrimonious discussion in the Chatterbox on Perlmonks, an interesting compromise for Module::Build was discussed. Instead of Build.PL, name it Makefile.PL., have it check for, and install it if it doesn't find it, a generic make wrapper (written in Perl) that calls make (or nmake or gmake) if MakeMaker is being used but lets Module::Build do its own thing. A simple Makefile could be written out that does virtually nothing but call the build script. Thus, we would get backwards compatability and have a clean migration path.
One problem I see is ensuring that the make wrapper gets picked up before the actual make program. The first time this is run, the user would have to run Makefile.PL as root/Administrator to ensure that the wrapper gets installed, but if those challenges could be overcome, would this fix much of the current Module::Build complaints (outside of PREFIX)?