Material changing based on slope.

I’m trying create a material that display different texture based on the slope, I already done it for my landscape material , however I was trying to use the same logic for the water, but I’m having problems with the setting,
this is my setting for the slope/blending,


And this is the result on the material:


As you can see I have three texture one on top, middle and bottom.
However the material display just the top one, unless I change the parameter (first picture) with really high numbers and negative, at that point I can see my material working properly on my mesh, but there is no blending the texture are cut between each other.

Any suggestion?

Thanks a lot.