Ah ok, I see your issue then.
You'll likely have to make a little system that handles depths for those panels - so you have a pool of ints that you can use, and keep track of which are being used and hold it like that in a sort of depth pool.
Alternatively, you do the same thing for each individual widget inside the health bar, but that can quickly become complicated.
For this particular issue, the old way NGUI did it would have been easier.
Maybe each panel should have some sort of "isolate draw call" bool, so its draw calls can be its own?