The other monks have made suggestions to add 'use warnings', add 'use strict' to your script.
Just want to point out that you can have a look at your Apache error.log to see what might be the cause of the error. And also you can also insert a few print statements to check your $month variable, and run your perl script on the command line. If it doesn't run on the command line, it will not run on the Web server.
The following is a more Perl-ish way to retrieve the month.
#!/usr/bin/perl -w
use strict;
my $timediff = 1; # 1 hour in the future
my $month = (localtime(time+$timediff*3600))[4] # month
+ 1; # we need to add 1 to month
print "Content-type: text/html\n\n";
if ($month==11)
{
local $/;
open (FILE, 'hours.txt');
print <FILE>;
close FILE;
}