This is probably more to do with your Unix environment than any particular Perl problem. A couple of things to check
1, Does your script require any environment variables? (remember your profile is not run by cron)
3, Find out if cron doesn't like it and direct the standard error from cron output to a file i.e