Hi,
I'm not familiar with the details of the CentOS packages from
puppetlabs. I assume that those explicitly use the ruby1.8 binary.
Try and take a look using "less `which puppet`". The first line
(shebang) holds the Ruby invocation.
If it's indeed ruby1.8, you might need to patch your Puppet
installation. You can also build your own RPMs that will behave just the
way you want.
As a crutch, you can probably just invoke Puppet through ruby1.9
(assuming there is such a binary on your system).
ruby1.9 `which puppet` <arguments ...>
HTH,
Felix