Okay, so I'm the Perl 6 designer most excited by them (and the one most to blame for them, though that's only by plurality of blame and not majority), but I've used them and they've solved real problems in my code with regard to duplication, typing, and genericity.
I suspect the users of Class::Trait have similar stories.
Don't get me wrong; I'm not down on duck typing in general. I think static, inheritance-heavy hierarchies tend to lead to bad designs. Yet there is a very real false cognate problem with duck typing and there are better ways to bundle and re-use code with cross-cutting concerns than mixins and monkeypatching.
I suspect though that languages which make doing the wrong thing both easy and syntactically attractive (yes, Smalltalk and Ruby) lead to subtler forms of technical debt in the form of near-duplication and potential fragility.
(Of course, if you always think of objects and classes in terms of objects and classes and not verbs bundled under appropriate adjectives, you make different design decisions. Hm, I almost made it through this entry without using the word "allomorphism".)