You say "letting the dev decide" but really it's shrugging off any responsibility so that the onus is on the developer. They make the dev the bad guy if they want to charge for a license transfer. However, it's Microsoft that is enabling the dev to charge fees... this is still on Microsoft.