Passar variáveis do PowerShell em um scriptblock

Estou tentando pegar variáveis do PowerShell e aplicá-las a um scriptbloc

param(
    [string]$username = $(throw "Blackberry Admin User Name is required"),
    [string]$password = $(throw "Blackberry Admin Password is required"),
    [string]$u = $(throw "Blackberry User Name is required")
    )

$s = New-PSSession -computerName bbbes01 
Invoke-Command -Session $s -Scriptblock {cd "C:\Program Files (x86)\Research In Motion\BlackBerry Enterprise Server Resource Kit\BlackBerry Enterprise Server User Administration Tool Client"
./BESUserAdminClient -username $username -password $password -ad_auth -domain staging -b bbbes -u $u -change -wrandom} -argumentlist $username $password $u

Eu estou corrend

. \ RandomActivationEmail.ps1 -username besadmin -password Pa $ word -u bb.user

O erro que estou recebendo é: -

Invoke-Command: Não foi possível encontrar um parâmetro posicional que aceite o argumento 'Pa $ word'. Em C: \ Scripts \ bb \ RandomActivationEmail.ps1: 12 char: 15 + Comando de chamada <<<< -Session $ s -Scriptblock {cd "C: \ Arquivos de programas (x86) \ Research In Motion \ BlackBerry Enterprise Se rver Cliente da Ferramenta de Administração de Usuário do Kit de Recursos \ BlackBerry Enterprise Server "+ CategoriaInfo: InvalidArgument: (:) [Invoke-Command], ParameterBindingException + FullyQualifiedErrorId: PositionalParameterNotFound, Microsoft.PowerShell.Commands.InvokeCommandCommand

Obrigado pela leitura, aplaude Colm.

questionAnswers(1)

yourAnswerToTheQuestion