I guess it’s a bug in the V-Ray Proxy ROP (I’ll need a hip file to debug this), but using Alembic is indeed a workaround and it’s actually much preferable to use Alembic in Houdini.
- if your alembic consists of a couple of (alembic) primitives you can just assign per primitive
- if you need to have a „per face“ assignement, you can assign materials before creating the alembic. The path to you material needs to remain intact (can‘t rename or move materials after the alembic has been created or you have to recreate the alembic).