For one, you aren't using strict, that will catch a lot of the errors this script may be throwing.
For another, i don't think you need to escape the email addresses in double quotes. check the mail account from which you are sending the mail to see if you are getting any return emails saying something like, "Recipient can not be found" or "does not exist".
I'd also take a look at
MIME::Lite and
Mail::Sender