Ok I found the issue but I'm not sure I understand why.
My messages sent were using a session created via createTransactionalClientSession
My messages being consumed were using a session created with createSession(false, false) and I was ack'ing the message in the MessageHandler.
I switched the MessageHandler to using a session created via createTransactionalClientSession and added a commit to the MessageHandler and now the message count updates fine.
Now the wierd thing is before even though message counts were not updating the messages were being taken off the queue
with a transacted session acks are only committed once the session.commit() is called. Alternatively at thius point you could have rolled back the session and the messages would have been put back on the queue