Как я понимаю, кодировка исходного файла - ANSI.
Попробуем указать её строго вручную.
Код:

cls
$pathIn = "C:\Users\Ps-2\Desktop\123\test.bnk"
$pathOut = "C:\Users\Ps-2\Desktop\123\test_new.bnk"
$ANSI = [Text.Encoding]::GetEncoding(1251)
$old = [IO.File]::ReadAllText($pathIn, $ANSI)
$new = $old.Replace('<app-developer>0', '<app-developer>2')
[IO.File]::WriteAllText($pathOut, $new, $ANSI)
# Проверка
Start notepad $pathOut
$oldFile = Get-Content $pathIn -TotalCount 1 -Delimiter "<?xml"
$newFile = Get-Content $pathOut -TotalCount 1 -Delimiter "<?xml"
Write-Host "До : $oldFile"
Write-Host "После: $newFile"
Write-Host -NoNewline "Символы в начале файла идентичны? "
$oldFile -eq $newFile
В итоге после замены в файле, который вы предоставили, ошибок в начальных символах нет. Результат в консоли:
Код:

До : МНє8p7iy6w38emu91ikg56wrvb5axIє ‹ ¶`тУлKТР8П—;Сґў9Ѕ1<?xml
После: МНє8p7iy6w38emu91ikg56wrvb5axIє ‹ ¶`тУлKТР8П—;Сґў9Ѕ1<?xml
Символы в начале файла идентичны? True