ShadowCaster not rendering alpha cutout

I have a camera writing to a render texture. It uses a replacement shader for rendering which draws some objects as only shadows. I have tried for many hours to draw shadows supporting alpha cutout (clip) with no success. I have verified that the _MainTex with alpha is present. What am I missing?

Which render pipeline?
Is transparent receive shadows enabled?
What have you all tried?
How is the custom shader setup?

Built-in.

“Transparent Receive Shadows” looks like an SRP toggle.

I have been focusing on the shadow caster, but maybe I have to look at the shadow receiver.

The ShadowCaster shader is copied exactly from “Legacy Shaders/Transparent/Cutout/VertexLit”

Shader "Unlit/DrawOnlyShadows"
{
    SubShader
    {
        Tags { "ShadowTag" = "OnlyShadows" "LightMode" = "ShadowCaster"}

        Pass {
            Name "Caster"
            Tags { "LightMode" = "ShadowCaster"}

            CGPROGRAM
            #pragma vertex vert
            #pragma fragment frag
            #pragma target 2.0
            #pragma multi_compile_shadowcaster
            #pragma multi_compile_instancing
            #include "UnityCG.cginc"

            struct v2f {
                V2F_SHADOW_CASTER;
                float2  uv : TEXCOORD1;
                UNITY_VERTEX_OUTPUT_STEREO
            };
            sampler2D _MainTex;
            float4 _MainTex_ST;
            float _Cutoff;

            v2f vert( appdata_base v )
            {
                v2f o;
                UNITY_SETUP_INSTANCE_ID(v);
                UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
                TRANSFER_SHADOW_CASTER_NORMALOFFSET(o)
                o.uv = TRANSFORM_TEX(v.texcoord, _MainTex);
                return o;
            }


            float4 frag( v2f i ) : SV_Target
            {
                clip(tex2D(_MainTex, i.uv).a -_Cutoff);
                SHADOW_CASTER_FRAGMENT(i)
            }
            ENDCG

        }
    }
    SubShader
    {
        Tags { "ShadowTag" = "ShadowReceiver" }

        Pass 
        {            
            Tags{ "LightMode" = "ForwardBase" }
            Blend One One

            CGPROGRAM
            #pragma vertex vert
            #pragma fragment frag          
            #pragma multi_compile_fwdbase
            #include "UnityCG.cginc"
            #include "AutoLight.cginc"

            struct v2f
            {
                float4 pos : SV_POSITION; 
                SHADOW_COORDS(0)
            };
            v2f vert(appdata_base v) 
            {
                v2f o; 
                o.pos = UnityObjectToClipPos(v.vertex);
                TRANSFER_SHADOW(o);
                return o; 
            }
            fixed4 frag(v2f i) : COLOR
            {
                return SHADOW_ATTENUATION(i);
            } 
            ENDCG 
        }
    }
    
}

Maybe try the regular lit passes instead of vertex lit