Biomes generated under the default world are filled with lava up to sea level

I'm trying to generate the nether underneath the overworld. The basic mechanism is to lower the minimum Y level to -192 (-64 - normal height of the nether), use condition surface rules to use the overworld surface rule at and above Y=-64 and use the nether surface rule below, and to use range_choice on narrow y_clamped_gradient density functions to use overworld density functions above Y=-64, and nether density functions below.

The problem: if I leave the sea level at Y=63, the nether areas are filled with lava; if I lower it to Y=-160 (nether sea level; 32-192), then the nether area works approximately* correctly, but the overworld oceans are dry.

The questions: 1. Why? The deep dark and (most) caves don't flood, so why is this different? 2. Is there a good way to circumvent this? I'm fine with lowering the sea level and using a surface rule or something to fill the oceans back if that actually does the job, but I don't know what all might be affected by changing sea level.

I'm probably going to make a mod that makes stacking dimensions easier (e.g., if I want to add the end or the aether above the world), mainly because the nether looks weird without ambient light and other stuff like infiniburn and ultrawarm, but I want to understand why this is functioning the way it is before I move on.

* I have a few tweaks I still need to do, but that can wait until the big stuff works.

Continue to help post