When a string is wrapped in PSObject the Encoding Transformation string => Encoding fails:
$utf8 = Write-Output utf8
Get-ZipEntry .\test.zip | Get-ZipEntryContent -Encoding $utf8
# Get-ZipEntryContent: Cannot process argument transformation on parameter 'Encoding'.
# Could not convert input 'utf8' to a valid Encoding object.