To make a Perl script portable is to avoid using system commands as much as possible. To deal with date formats actions, you’d better use DateTime or Date::Calc modules.
For a simple formatting of the current date using localtime() Perl function :
use POSIX qw(strftime);
my $date = strftime “%d-%m-%y”, localtime;
Instead of :
my $date = qx(date +%d-%m-%y);
Both work. The first one is more Perlish 😉