Hello @maxk-6580 - Since both details and innerError are null, the error doesn't point to a specific requirement — so the multi-region checks matter more than subnet comparison.
One thing a subnet comparison won't surface is regional service tags. From the VNet configuration reference: "In multi-region deployments, the NSG in each region should allow traffic to the service tags for that region and the primary region."
So Italy North needs Storage.ItalyNorth, Sql.ItalyNorth, and EventHub.ItalyNorth as well as the Canada East equivalents. If those subnets inherited only the primary region's NSG rules, they'd be missing their own regional tags, which matches the failure on …-prd-itn. This point doesn't apply if you're using the global Storage / Sql / EventHub tags, since those already cover all regions.
Scope note: that reference covers the classic tiers. If these are Premium v2 instances, injection requirements are documented separately.
Also worth checking in multi-region Premium: AzureTrafficManager inbound on 443 (required for external VNet mode) and AzureLoadBalancer inbound on 6390 (Developer SKU is exempt; missing it at Premium blocks control-plane and data-plane access).
Help make this community better for everyone: if this answer resolved your issue, please accept it or leave an upvote. If not, share more details in a comment so we can continue the discussion and find the right solution.