This isn't a bug. That's the correct behavior for the capital X operator, also called the cross operator. S03 defines it as:
"the X operator returns all possible lists formed by taking one element
from each of its list arguments"
Perl 5's lowercase x operator has split into Perl 6's x and xx, which
are 'string replication' and 'list replication'.
[swe...@kweh ~]$ rakudo
> say ("2" x 3).perl
"222"
> say ("2" xx 3).perl
["2", "2", "2"]
