In the meantime one thing I was thinking of doing was detecting when a new block was found and saving the previous total shares score. It would be accurate down to (Block Discovered Time - Last Refresh Time) so would miss a few shares.
I have a ticker running on
http://blockchain.info/latestblock which pings me when a new block is found - not perfect but good enough for what you need maybe...