Thank you for working it out via email.
I use ISAMLObserver to listen to SAML events (message sent, received, etc.), older implementation used AbstractSAMLObserver. The problem was in my Observer object which cased error, which failed silently, during InitiateSLO. This resulted in session state being not up to date and on ReceiveSLO throwing the error.
Best Regards, Milan