I think the cause is that PREFIX is too hard. At least that's the claim I've heard from the Module::Build developers. I also heard that Schwern promised to implement PREFIX= in Module::Build, as that feature was auctioned at some YAPC, 6 months to one year ago. The feature is still missing, obviously.
Personally, I've used Module::Build once, because it seemed easier at that time to not muck around with the Makefile text, as I wanted to add (re)building a Parse::YAPP parser from a grammar to the make process. Other than that, I mostly see people using Module::Build because Schwern tells them to or other people suggest that Module::Build was somehow "better" than ExtUtils::MakeMaker, where I found it opaque to debug and non-working resp. with less features (but then, I've ranted on this often enough).