Nice idea, but some performance concerns. If you want to use cgetargs (the compiled, faster version), you are restricted to the getargs() interface, which only features checking for required arguments and supplying default value. In which case you might as well use Params::Validate directly as it's several times (e.g. 3-4x) faster.
If you want to use the more featured xgetargs, there is currently no compiled version.
All in all, I think users should take a look at Params::Validate first.