Why does this HERE statement give an error when the program is executed with backticks?

I have a program 'thursday.pl' which works perfectly fine when executed from the command line.

When I execute it from a menu in another program, like this:

if ($val eq 2 ) {$dummy = `$perlPath $hnrPath/thursday.pl`; goto HNR;}

I get the following compilation error message:

"Missing braces on \o{} at /perl/hsf/options/hnr/thursday.pl line 52, near "$startDate to $lastDate" Execution of /perl/hsf/options/hnr/thursday.pl aborted due to compilation errors"

The line 52 it complains about is in the middle of a HERE statement:

# print instructions for exdiv screen
my $message = <<"End_Message";
When you hit enter the program will bring up the ExDiv Selection screen.
Sign In if necessary

SET SEARCH CRITERIA
1. Set date range for $startDate to $lastDate <-- THIS IS LINE 52 -->
2. Uncheck all boxes except Stocks and ETFs
3. do the search.
4. Save screen as 'weekly.htm' in perl\hsf\options\HnR
5. Close the browser.

This screen will re-appear.
Then hit Enter, to invoke XdivScrape.pl
End_Message
print "\n$message\n";

The slash o looks like an error message you might get from a dir command when sorting, but why would it be here?

Why should this program which compiles fine from the command line have this error when executed from another program?