This is apparently a problem with delphi. We have had the same problem, and I was curious to see if the borland.public boards had an answer. It appears that twwdbgrid is a direct descendant of delphi's tdbgrid (as expected), and that delphi's tdbgrid works that way on purpose. According to the posts on the borland boards, some dataset types do not include a recordcount property, and it can be expensive (performance-wise) to constantly retrieve it. I don't buy this entirely, since you would think it would work fine if the dataset has a recordcount (in BDE or ADO type operations).
Our initial attempt to solve this problem was to drop a TScrollbar on top of the grid scroll bar and control that, but it was a pretty time-consuming problem to handle all the possible user operations, and we gave up. We just provide our users with the poor quaility scroll bar that we get with infopower.