Perl6::Signature's being P::RD-based is not material here. Once per function, at parse time, Perl6::Declare will parse the Perl 6 signature of a sub and install data binding (and possibly, runtime checks) as appropriate.
The speed comes from another module (sorry to keep calling rabbits out of hats, those aren't the ones anyone gets to eat). It's Data::Bind, which too lacks documentation except for its tests. Word is it's in some cases faster than = @_.