thin refraction doesn’t distort anything if the surface isn’t curved… The present distortions are due to Suzanne not being flat.
I’m fairly sure if you set the normal to incoming, all you effectively do is turn your refraction shader into a mix of a transparency shader and a “no shader”, mixed according to F0. At that point you might as well switch to that as that’s probably more efficient.
And I don’t think the roughness here is taken care of correctly, especially if you consider there could be IOR differences too (as is the case in my example above)
But anyways, that’s sorta the point: You can’t really do it fully “right” without it being built into shader nodes.
In the context of the Oren-Nayar model, roughness is more accurate since it models lambertian V-cavity microfacets, but I’ll have a look at what others use.