The HTML doesn't validate, but that's something on my to-do list. Nevertheless, HTML::Perlinfo::Modules is not intended to make your website prettier. Its intent is to show you information about your Perl modules. I've tested the appearance of the HTML on a few browsers and have never encountered an issue.
Via the full_page option, HTML::Perlinfo::Modules does allow you to insert your own HTML, which you do in your example. You could also set CSS attributes, along with the title of the page, in the constructor. For example:
If you wanted to offer some code to improve the module, it would be more than welcomed.$modules = HTML::Perlinfo::Modules->new( bg_image => 'http://i104.photobucket.com/albums/m176/ +perlinfo/camel.gif', bg_repeat => 'yes-repeat' );