I prefer Module::Build, but that is largly a question of taste as long as nothing complicated is asked for. I guess Build should be cleaner and more powerful than MakeMaker, but its just that, a guess.
Maybe not really what you asked for, but: I can recommend module-starter (frontend to Module::Starter) together with Module::Starter::Smart to generate the module tree. Works with Module::Build and MakeMaker.