I would like to share some specific thing that can be relevant to this scene as well. Have a look at Maxwell Render documentation last figure:

So looking at the last figure you may see that a good way of modeling the overlapping refractive objects like bottle glass and water object is to use the concept of nested dielectrics. According to this concept the water object borders (see red line on the figure) overlap the glass object. Both are refractive and have different IORs. To resolve this physically some renderers use the priorities but CentiLeo uses "Is Liquid" setting in Transmission Tab. Is Liquid should be set On for liquids like water in this case in case of overlap and it will help to make correct refractions.
The other nice thing is the ability to set IOR smaller than 1. In this case you can use not the overlap but model the bottle-water objects as one object with the borders between glass and water mediums. And on the interface (the surface) between both mediums the IOR of material should be relative IOR equal to IOR(glass) / IOR(water). This can take some computations, but it will result in another way of correct modelling. However the "Is Liquid" concept is simpler
