I do not think that any messages should be left out based on a quick overview, but you are working in a very strange way with a lot of opportunities for the conditions of the race.
ProcessMessage ( ProcessMessage , ). , MSMQ, , , .
, , , ( EndReceive). , ( , MessageQueue.ClearConnectionCache();).
, - , .