That's easy, CGI::Application hates you because you're not using templates. CGI::Application and HTML::Template have been dating since high-school and they don't take kindly to people that try to break them up.
And they've been introduced to some other friends (HTML::FillInForm, Data::FormValidator) to handle creating sticky forms and still keep the HTML in templates. They're a pretty tight group of friends.
-- More people are killed every year by pigs than by sharks, which shows you how good we are at evaluating risk. -- Bruce Schneier