Erro cancelamento NFe estado CE: (297) Rejeicao: Assinatura difere do calculado

Estou com um problema no serviço de cancelamento de nf-e em homologação. O problema só acontece com o estado do Ceará:
(297) Rejeicao: Assinatura difere do calculado

Fiz validação do XML no site da Sefaz do CE e está ok:

* Leiaute: cancNFe Versão: 2.00
* Estrutura válida.
* Assinatura Válida.
* Codificação UTF-8.

Segue arquivo xml de requisição do cancelamento:

<?xml version="1.0" encoding="UTF-8" standalone="no"?><cancNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00"><infCanc Id="ID23110607071009000213550010000254631100604776"><tpAmb>2</tpAmb><xServ>CANCELAR</xServ><chNFe>23110607071009000213550010000254631100604776</chNFe><nProt>123110000326494</nProt><xJust>TESTECANCELAMENTONFE</xJust></infCanc><Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/><Reference URI="#ID23110607071009000213550010000254631100604776"><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/><Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><DigestValue>ihO7CEV/LOjFU0CZOnRT77Hj5nM=</DigestValue></Reference></SignedInfo><SignatureValue>cXGtzxwrlA9AZMrO6tF6l3DGdjV+/Aas+iOwrJkjuZEypjjqesBwu/fbw6MywL+FNdi2l05B5lKD tKL2BCmyaoO70z16lwFuZFVeGSUx3RPLyElVJAyMg1r0JHe7ec4tSvfhJh6U4U8L++97CYc3qKQC NPDkUgtf1Tp/i5NZhJs=</SignatureValue><KeyInfo><X509Data><X509Certificate>MIIGYjCCBUqgAwIBAgIIWBqPPQ+GJYAwDQYJKoZIhvcNAQEFBQAwdTELMAkGA1UEBhMCQlIxEzAR BgNVBAoTCklDUC1CcmFzaWwxNjA0BgNVBAsTLVNlY3JldGFyaWEgZGEgUmVjZWl0YSBGZWRlcmFs IGRvIEJyYXNpbCAtIFJGQjEZMBcGA1UEAxMQQUMgU0VSQVNBIFJGQiB2MTAeFw0xMDA3MDkxNzEw MDNaFw0xMTA3MDkxNzEwMDNaMIHrMQswCQYDVQQGEwJCUjELMAkGA1UECBMCU0MxFzAVBgNVBAcT DkpBUkFHVUEgRE8gU1VMMRMwEQYDVQQKEwpJQ1AtQnJhc2lsMTYwNAYDVQQLEy1TZWNyZXRhcmlh IGRhIFJlY2VpdGEgRmVkZXJhbCBkbyBCcmFzaWwgLSBSRkIxFjAUBgNVBAsTDVJGQiBlLUNOUEog QTExEjAQBgNVBAsTCUFSIFNFUkFTQTE9MDsGA1UEAxM0TUVUQUxOT1ggSU1QT1JUQUNBTyBFIEVY UE9SVEFDQU8gTFREQTowNzA3MTAwOTAwMDEzMjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA 0LD+FCkUGNKnhiGXfcpSep2kXpP0CPQt3WTnIg2je8IMZSuG3MbbIpp4DiJn2TUsEhqSZ7EcOXB1 VJX3cMUlM2FKwJ/6n1YeFC39V8Ixa5j1AH/PIUelnCakIRL83DogO4iXNPQs4a7j/8ppHwdBrnTw lwj3rO3S/ILghFf77UUCAwEAAaOCAwEwggL9MAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgXgMB0G A1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAfBgNVHSMEGDAWgBSa3SK29nfpQm9IwlFAoFbi 83Q/uzCBtAYDVR0RBIGsMIGpgRtDRVJUSUZJQ0FET1NATUFSTElBTi5DT00uQlKgFwYFYEwBAwKg DhMMSk9BTyBQRVJFSVJBoBkGBWBMAQMDoBATDjA3MDcxMDA5MDAwMTMyoD0GBWBMAQMEoDQTMjEy MDExOTYyNDQzODg4Mjk5MDAwMDAwMDAwMDAwMDAwMDAwMDAxMTMzNDU0MVNTUFNDoBcGBWBMAQMH oA4TDDAwMDAwMDAwMDAwMDBXBgNVHSAEUDBOMEwGBmBMAQIBDTBCMEAGCCsGAQUFBwIBFjRodHRw Oi8vd3d3LmNlcnRpZmljYWRvZGlnaXRhbC5jb20uYnIvcmVwb3NpdG9yaW8vZHBjMIHzBgNVHR8E geswgegwSqBIoEaGRGh0dHA6Ly93d3cuY2VydGlmaWNhZG9kaWdpdGFsLmNvbS5ici9yZXBvc2l0 b3Jpby9sY3Ivc2VyYXNhcmZidjEuY3JsMESgQqBAhj5odHRwOi8vbGNyLmNlcnRpZmljYWRvcy5j b20uYnIvcmVwb3NpdG9yaW8vbGNyL3NlcmFzYXJmYnYxLmNybDBUoFKgUIZOaHR0cDovL3JlcG9z aXRvcmlvLmljcGJyYXNpbC5nb3YuYnIvbGNyL1NlcmFzYS9yZXBvc2l0b3Jpby9sY3Ivc2VyYXNh cmZidjEuY3JsMIGZBggrBgEFBQcBAQSBjDCBiTA9BggrBgEFBQcwAYYxaHR0cDovL29jc3AuY2Vy dGlmaWNhZG9kaWdpdGFsLmNvbS5ici9zZXJhc2FyZmJ2MTBIBggrBgEFBQcwAoY8aHR0cDovL3d3 dy5jZXJ0aWZpY2Fkb2RpZ2l0YWwuY29tLmJyL2NhZGVpYXMvc2VyYXNhcmZidjEucDdiMA0GCSqG SIb3DQEBBQUAA4IBAQA5OiQup7SU36Uz4yW2vALydC3HVTPIzQPIFRIF02Vh5TQiNdTFvJMqOHkR SQ/avfIS7cIRdlF199707R5441gwKL2En6AxlDyDk84zZOIARCpEv0NmNQ2uOLTge1vJTrKzJ4gG C2VQ/TbFqhjjEoF2VRXfszRFghK//X8raM6RSWlfTgsBW+W+qyZ+QQFjnTwmOUKzhIrI1R8zOy/S mmKa3MFVZFTIFJuvs7Ivncz5mET8KlxiNXnqalJYCAy5OlEtutJpbh1LjxauZOhcWjwdMFBpOgle 1KydXmRKiWPB7TamACYM5iw+qiDiYMVnJ/fbYvFITI+QsR8amfnbqAvU</X509Certificate></X509Data></KeyInfo></Signature></cancNFe>

Resposta da requisição:

<retCancNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00"><infCanc><tpAmb>2</tpAmb><verAplic>CE_NFe_V2.00.1.00.21</verAplic><cStat>297</cStat><xMotivo>Rejeicao: Assinatura difere do calculado</xMotivo><cUF>23</cUF></infCanc></retCancNFe>

Este é o código java de envio:

	hservice = new NfeCancelamento2Stub(endereco);
	NfeCancelamento2Stub.NfeCabecMsg nfeCabecMsg = new NfeCancelamento2Stub.NfeCabecMsg();
	nfeCabecMsg.setVersaoDados(versaoDados);
	nfeCabecMsg.setCUF(codUF.toString());
	NfeCancelamento2Stub.NfeCabecMsgE nfeCabecMsgE = new NfeCancelamento2Stub.NfeCabecMsgE();
	nfeCabecMsgE.setNfeCabecMsg(nfeCabecMsg);
	InputStream in = new FileInputStream(dirDadosMsg);
		
	//Nova linha devido ao erro de namespace
	XMLInputFactory xmlInputFactory = XMLInputFactory.newInstance();       
	//Nova linha devido ao erro de namespace		               
	//Propriedade utilizada para manter o namespace <NFe xmlns="www.portalfiscal.inf.br/nfe" >   
	xmlInputFactory.setProperty(XMLInputFactory.IS_NAMESPACE_AWARE, Boolean.FALSE);   
	//Nova linha devido ao erro de namespace		               
	XMLStreamReader xmlReader = xmlInputFactory.createXMLStreamReader(in);   
	     
	StAXOMBuilder staxOMBuilder = new StAXOMBuilder(xmlReader);
	NfeCancelamento2Stub.NfeCancelamentoNF2Result nfeCancelamento2Result = new NfeCancelamento2Stub.NfeCancelamentoNF2Result();
	NfeCancelamento2Stub.NfeDadosMsg nfeDadosMsg = new NfeCancelamento2Stub.NfeDadosMsg();
	nfeDadosMsg.setExtraElement(staxOMBuilder.getDocumentElement());
	nfeCancelamento2Result = hservice.nfeCancelamentoNF2(nfeDadosMsg, nfeCabecMsgE);
	BufferedWriter out = new BufferedWriter(new FileWriter(dirArqRetorno));
	retMsgME = nfeCancelamento2Result.getExtraElement().toString();
	out.write(retMsgME);
	out.close();

Utilizei o web service do estado do RS para geração dos arquivos NfeCancelamento2Stub.java e NfeCancelamento2CallbackHandler.java

Muito obrigado pela atenção.