Not too far off. The two arguments to AdministrativeShutdown are the NodeID (as an int) and a list of PortIDs (as an int array). So you can call it like this:
$nodeID=137
$portIDs=@(1169)
Invoke-SwisVerb $swis Orion.UDT.Port AdministrativeShutdown @( $nodeID, [int[]] $portIDs )