You're right, overlapping both objects and doing a merge should do the job (in
tis case; it will definitely not do what you need for different liquids). Did
you test with plain boxes instead of isosurfs?
Maybe you also have a max_trace_level issue here?