日本語reverse

ちょっと文字化けジェネレータやったときに文字コード周りが気になったんで.

$ cat enc.pl 
#!/opt/local/bin/perl
use warnings;
use strict;
use Encode;

my $str;

# 化ける
$str = reverse 'これは良い日本語ですね';
print $str,"\n";

# 化けないけど反転しない
print reverse 'これは良い日本語ですね';
print "\n";

# 正しく反転する
$str = 'これは良い日本語ですね';
$str = Encode::decode('utf-8', $str);
$str = reverse($str);
$str = Encode::encode('utf-8', $str);
print $str,"\n";
$ perl enc.pl 
??㙁㧁㞪謜楗愁㯉证㌂㓁?
これは良い日本語ですね
ねすで語本日い良はれこ
$ 

あれ,なんで?とくに二つ目.