An Azure service that provides private connectivity from a virtual network to Azure platform as a service, customer-owned, or Microsoft partner services.
Box 3 is most likely DNS caching and not poisoning.
The resolver caches the CNAME from the public lookup of table.core.windows.net
It can answer from the cache on the next request. So, it never queries privatelink.table.core.windows.net . This means your conditional forwarder is not invoked.
Because the initial query hits the conditional forwarder. So, forwarding the entire domain is reliable.
Inherently unreliable with normal recursive DNS caching if you forward only the privatelink target.
This is not something you can reliably achieve with standard conditional forwarding. Making box 1 always return the public answer while selectively forwarding the CNAME target.
You need a DNS architecture that does the initial query for the relevant name to reach the resolver authoritative for the Private Link zone, rather than relying on CNAME chasing to trigger forwarding.