Vários dos caracteres que você está tentando substituir são caracteres especiais em regex. Eles têm significados especiais e reservados que permitem criar expressões complicadas quando eles não são "escapados". Para escapar deles, basta incluir uma barra invertida na frente do caractere especial. Exemplo:
PS C:\> $string = "(U) (V7.9) (USA)"
#Failure
PS C:\> $string -replace "(U) (V7.9) (USA)", "(USA)"
(U) (V7.9) (USA)
#Success
PS C:\> $string -replace "\(U\) \(V7\.9\) \(USA\)", "(USA)"
(USA)
Aqui está uma Referência Regex do Powershell caso você tenha problemas semelhantes. Você pode notar que o caractere backtick 'é usado em vez da barra invertida - o backtick é o caractere de escape no powershell, mas isso não é verdade para todo o manuseio de regex no .NET (no qual o Powershell é construído). Por causa disso, você pode ver ambos usados em exemplos de regex para o powershell na internet.