Is it possible to have the scale sets deploy to different AZs? if so When should Availability Set be used vs Scale-Sets
Yes, you can have scale sets use availability zones: https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-use-availability-zones.
Scale sets are used when the load is increasing beyond the current capacity of the virtual machines. In this case another VM will be deployed from the scale set to handle some of the load.
An availability set is used to physically separate resources and make them less prone to an outage: https://docs.microsoft.com/en-us/azure/virtual-machines/windows/tutorial-availability-sets
I hope that help.