Changing Queue in shader has no effect

I have a simple shader I use for water. I want it rendered before the terrain trees, so I set the queue to “Transparent-200” (the trees queue is “Transparent-100”).
I have done this years ago in other projects and it always worked.
However now it doesn’t work, I’ve tried setting the que to different values but none has any effect, it’s like the queue tag is being ignored completely.

any ideas?

here’s the shader:

Shader "Custom/WaterMobile" {
Properties {
	_MainTex ("Base (RGB) Trans (A)", 2D) = "white" {}

SubShader {
	Tags {"IgnoreProjector"="True" "RenderType"="Transparent" "Queue"="Transparent-200"}
	ZWrite Off
	Blend SrcAlpha OneMinusSrcAlpha
	Pass {
			#pragma vertex vert
			#pragma fragment frag
			#pragma multi_compile_fog
			#include "UnityCG.cginc"

			struct appdata_t {
				float4 vertex : POSITION;
				float2 texcoord : TEXCOORD0;

			struct v2f {
				float4 vertex : SV_POSITION;
				half2 texcoord : TEXCOORD0;

			sampler2D _MainTex;
			float4 _MainTex_ST;
			v2f vert (appdata_t v)
				v2f o;
				o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
				o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
				return o;
			fixed4 frag (v2f i) : SV_Target
				fixed4 col = tex2D(_MainTex, i.texcoord);
				i.texcoord.x += _Time.x*0.05;
				col.rgb = tex2D(_MainTex, i.texcoord*21).rgb;
				i.texcoord.x -= _Time.x*0.12;
				col.rgb += tex2D(_MainTex, i.texcoord.yx*13).rgb;
				//col.rgb *= tex2D(_MainTex, i.texcoord.yx*13).rgb *2;
				col.a = saturate(col.a *col.r*3);
				UNITY_APPLY_FOG(i.fogCoord, col);
				return col;


Enabling Debug mode in the inspector allowed me to see the problem;
The material’s “Custom Render Que” was set to 3000, instead of the default -1.
(-1 causes the queue in the shader to be used, anything else will override the value in the shader)

How it got this value is a mysterie to me, I never set it in code, nor through the debug mode.