As far as I understand it, mod_perl will eval{} the code it's going to run and in the paragraph "Limitations" on http://search.cpan.org/~rgarcia/Switch-2.13/Switch.pm we're told that "Due to the way source filters work in Perl, you can't use Switch inside an string eval.".
heiko