Done some more testing, now i've woken up...
Seems to work with valid values.
Assume you will fix for assets it can't find and block number higher than current.
Question - because of risk of node on a forks shouldnt' we advise people to restart their NRS and use a minimum difference between the current block height and the dividend block height e.g. 1 day or 1440 or risk a list with errors?
I did some more specific testing with silver and transferred some assets in and out of an account to make sure...
In the block before the transfer it does not appear in the list if the account has NEVER held it before.
If the account has held the asset you still emit the account number but with a balance of 0.00000 - which is perhaps a bit confusing.
Question: why list people who have ZERO for dividends? finding accounts who have ever held the stock is useful though
so account 10728451002573970815
asset silver 7819056276221630295
block 141252 - pre-transfer balance is 0.00000 (but it has held it before so it is still in the results)
block 141253 - block in which the transfer TX is forged balance in results is 0.1 which is correct

block 141254 - block afterwards (for completeness) balance in results is 0.1 which is correct

had a couple of examples where NXTservices stopped - i think this is because somehow it has upset NRS which also seems to have locked - but I have no idea why the high volume of API calls would cause this, after a few runs NRS does seem to become a bit 'lazy', something to watch for as more NXTservices is rolled out.