I dont think the issue is caused by the way the data is being pulled back from the dataset but rather the table itself for this paticular report.
The header is in the correct place but it dosnt have any picture in the grey box but I'm not sure if that is normal for 2008. In 2005, you get an image in the grey box next to the header row representing the top of a table.
You could try one more thing.. right click on the grey box next to the detail row (the one with the 3 lines in it) and see if there is a box around the menu item Table Header. There should be one. Click on it so that it is deselected and see if it the header row disappears from your report. If it does then select it again and it should come back. Run your report and see if anything has changed.. see if the header repeats on other pages. If that dosnt work then try this.
right click on the grey box next to the header row and select 'Insert Row Above' (if available) and you should get another row above the current header.. fill in the fields in the new row and delete the original header and then run the report.
If that fails and its not ideal to put the table header in the page header then the best thing to do is delete the table and recreate it but make sure you back up your reports before you do so. If you can create the table in another report with working repeated headers then its a bug in the current report.
The person who had the same problem before said it worked after he recreated his table. I couldnt find anything wrong with your report that would have stopped the header from repeating. Sorry I couldnt give you a definative solution to your problem.
Rob