Well actually I think I was doing it wrong. I stored raymarching effects in 2D texture. This is not correct because it suffers from issues.
Correct way is store raymarching effect in 3D texture, to get linear interpolation and no banding. And then perform sampling from it.
Now I need to implement this to check if it is true.