@Bruno Lamonato,
Todo XML, deve ser precedido de uma "declaração", que informa como ele é codificado..
https://www.w3resource.com/xml/declarations.php
No caso dos XMLs de Documentos Fiscais brasileiros, fica padronizado que eles devem ser em UTF8, portanto a declaração obrigatória em todo XML de Documento Fiscal, seria algo como:
<?xml version='1.0' encoding='UTF-8' ?>
O arquivo que você nos enviou em privado, não tem tal declaração, e isso confunde as bibliotecas que manipulam XML
Observe que mesmo o Microsoft Edge tem problemas a lidar com XMLs sem a declaração inicial
Como você obteve esse XML ? seria importante reportar ao Site / Empresa, que eles estão fornecendo um XML fora da especificação...
Como Workaround, e presumindo que todos os XMLs recebidos estariam em UTF8 (pois é o padrão brasileiro) você poderia criar uma rotina simples, que adiciona a declaração ao XML se necessário..
Na verdade, o ACBrUtil já tem um método que faz exatamente isso... Exemplo de uso:
var
SL: TStringList;
XmlDuvidoso, XmlCorreto: String;
begin
SL := TStringList.Create;
try
// Lendo O XML
XmlDuvidoso := SL.LoadFromFile('C:\TEMP\Arquivo.xml');
XmlCorreto := InserirDeclaracaoXMLSeNecessario(XmlDuvidoso); // <-------- AQUI ---------
finally
SL.Free;
end;