It is not a bug, instead by spec, columnClasses is applied sequentially to the active columns. It was a fix in MYFACES-3749, but I checked it with the latest version of Mojarra and it works the same.
My suggestion is use tomahawk extended datatable, that works just like h:datatable but with some extended features. In your case you can set the styleClass of the column in this way.
<t:datatable var="row" ...>
<t:column styleClass="#{row.styleClass}">
...
</t:column>
</t:datatable>
This issue has been already reported in the spec. See JAVASERVERFACES_SPEC_PUBLIC-217.