You might be having problems with the way you are manually setting the HTTP response header. If you want to set them manually with a print statement under mod_perl 2, you should set the following in httpd.conf:
PerlOptions +ParseHeaders
The preferred and faster method is to write a handler and use the methods provided by Apache2::RequestRec:
use Apache2::RequestRec ();
# Inside your handler...
$r->content_type('text/html');
You could also use CGI.pm and it should do the right thing:
use CGI;
print CGI::header();
Does this make a difference? What does the access log show? Is it serving a page? You can also print out $ENV{MOD_PERL} and it should tell you if you are running mod_perl and what version, but you need to get the script running first. :)