Love your work! Thanks for looking out for all the IT folks that are still figuring out how to deploy hundreds of these things at a time.
I've been playing around with your script since the first version, and they only thing I haven't been able to figure out is where you are getting the urls for the updates from. I've poked around on MS's download pages and haven't found any links that look like the ones you have been using each time you update the script. Where can I get the URL to manually update this next time an update is released?
example:
# Download Microsoft Surface Pro 3 drivers
Write-Host "Downloading Surface Pro 3 January 2015 drivers.." -nonewline
$clnt = New-Object System.Net.WebClient
$url = "http://download.microsoft.com/download/2/0/7/2073C22F-2F31-4F4A-8059-E54C91C564A9/SurfacePro 3 - January 2015.zip"
$clnt.DownloadFile($url,$file3)
Write-Host "done!" -ForegroundColor Green