As someone mentioned in the CB (update: and in posts above), you forgot 'OUTF' on your print statement. But here's another possibility:
use File::Copy;
...
open(OUTF, ">combine.csv") or die "Error opening combine.csv: $!";
for my $file (@files) {
copy($file, \*OUTF) or die "Error copying $file: $!";
}
close OUTF;