Basically, mob spawn height ranges overlap, resulting in larger groups at certain elevations instead of a smooth progression of difficulty. The most common situation to run into is where Deep Drifters can spawn near the surface alongside the larger packs of Surface Drifters, which create an encounter far harder than what you'd get deeper in where just Deep Drifters spawn. Secondly, at y=22-23%, all three of the deeper drifter types can spawn! I'd suggest completely changing the spawning mechanics, actually. Instead of every mob type having an independent spawn rate, mobs should spawn in specified groups. Like, one spawn group would include a bowtorn alongside drifters, one spawn group would have a shiver and drifters, another group would just be two bowtorn or one shiver... That sort of thing. Spawns which happen in deeper caves would include harder mobs, of course. This means we'd have intentionally-designed mob mixes instead of this system which is vaguely defined, hard to balance, and impossible for the user to predict unless they look at the code.
If you don't want to make a drastic change like that, you should at least remove most of the overlap. I'd be ok with the hard drifters spawning in deep caves without so many easier drifters spawning alongside them and creating big groups of mixed types.