October 2023 and the bug is not solved. Azure Portal still assigns a random subnet to new VMSS.
I found a simpler way of changing subnet without creating a new NIC.
First, get the Resource ID of the subnet in the properties section of Azure Portal or in Azure Resource Explorer https://resources.azure.com/
After, replace the variable values of this Azure Powershell script and run it:
$ResourceGroupName = "<ResourceGroupName>"
$ScaleSetName = "<ScaleSetName>"
$NewSubnetResourceId = "<NewSubnetResourceId>"
$vmss = Get-AzVmss -ResourceGroupName $ResourceGroupName -VMScaleSetName $ScaleSetName
$vmss.VirtualMachineProfile.NetworkProfile.NetworkInterfaceConfigurations[0].IpConfigurations[0].Subnet.Id = $NewSubnetResourceId
Update-AzVmss -ResourceGroupName $ResourceGroupName -VMScaleSetName $ScaleSetName -VirtualMachineScaleSet $vmss