ResponseHandling.cs uses Encoding.GetString(byte[]) instead of using StreamReader.
This means that ResponseHandling ignores BOM handling and incorrectly parses the BOM preamble as 3 utf-8 characters.
Instead you should use
using var reader = new StreamReader(new MemoryStream(bytes), encoding);
return reader.ReadToEnd();