sure you load the correct bit-wise version of PowerShell. If you're running the 64 bit version then you'll get the exception
Could you verify using the x86 powershell console as
[System.Reflection.Assembly]::LoadFrom( "C:\windows\system32\inetsrv\Microsoft.Web.Administration.dll" )
rather than
[Void][Reflection.Assembly]::LoadWithPartialName("Microsoft.Web.Administration")