I have worked on the refraction definition today. What I had was nearly uncontrollable. I think it is a bit better now, but I still have to check something.
The refraction code has the ability to filter the light based on thickness of the material. It is only the first order solution, so I am only using an exponential function. Before I used a color in the UI which was abused so that the color components directly defined the constants in the filter. That made it hard to control. The UI always showed the inverse color of the filter (so if I wanted the filter to be green, I would turn green to a very low value and red and blue to a high one, the color shown would then be magenta). Also the density was not controllable at all. And finally the domain was limited to 0 to 1 (which is not sufficient).
Now I do it a bit differently, I define the color of the filter depending on a specified depth. I think that should work better. But I also have one issue, the resulting color looks too light for me, it is as if the density was not correct. I will have to check the code again, but it could also be the result of tone mapping.