There was a paper a few years ago that did this for shadow mapping, but I can't find it right now. The main idea is to think of the pixel/voxel as a cube that is split into two parts, one inside, one outside (in your case, of the ROI). When you render a pixel that belongs to the cube, you figure out where it is in the cube (fractional texcoords should be fine), and use that to decide whether it's in or out, and act accordingly. So for you you could save a plane equation that says for example that the area left of the x=.75 point in your cube is inside the ROI, the rest is outside, and you would get super-voxel resolution ROIs. You could also go beyond planes to higher-order
I guess the question is how often you need to update the ROI, and how high the ROI resolution really needs to be.