Я знаю, что вы уже приняли ответ, но он использует довольно неуклюжий старый модуль Date :: Calc.В наши дни большинство людей рекомендуют использовать DateTime вместо этого.
#!/usr/bin/perl
use strict;
use warnings;
use DateTime;
my %start;
@start{qw[day month year]} = split /\./, '27.12.2007';
my %end;
@end{qw[day month year]} = split /\./, '12.03.2010';
my $start = DateTime->new(%start);
my $end = DateTime->new(%end);
my $curr = $start;
while ($curr <= $end) {
print $curr->ymd, "\n";
$curr->add(days => 1);
}