Hi Stew,
Thanks for the sample. I can well understand that this has been hard to reproduce, as this was quite deep and there are a few conditions that must be met for this to occur.
First of all, this has nothing to do with primary key column, although it does appear that way in the beginning.
I opened a new tracker entry on the subject. Please view it here and follow up on our progress.
Please pay special attention to the suggested workarounds in that entry, as you can easily change your code to apply them. I tested workaround 2) on your application and had it work as expected with the first column hidden.
Thanks again for the sample and for the report.
Palli