Thanks for the reply. Unfortunately it parses the command and doesn't except multiple commands with a semicolon. By blind luck i tried the below and it works perfect:
$in = New-Object NetApp.Manage.NaElement("system-cli");
$in.AddNewChild("priv","diag")
Hopefully this helps someone else at some point.