The code to invoke Powershell looks fine.
Could you try add following line in FileCreationRule.xml file at the beginig of the rule?
Add-type -path C:\<IQServicePath>\Utils.dll
As you mentioned, rule works properly though application connector Rule, because you are using IQService to provision, but when you try execute powershell code using external rule, in the code you are not importing IQService Library