No objections from me, but since Francisco is working on this it's appropriate to have a green light from him too.
In general sure, but I think this is straightforward. I'd suggest using uint32_t though, because this is a mask.
More broadly, the only places in vkd3d that should use Windows types like DWORD are places where those are dictated by the API we're implementing; for vkd3d-shader that's essentially nowhere. (Because things like DWORD don't have a consistent definition between the Linux and the Windows build. We want to address that, but avoiding these types avoids the issue, and there should be few places that actually require them.)