I am sorry but I do not find this to be a similar test. I am not using a datatable, and I am not doing anything datasource wise inside the report itself.
Here is a trimmed down code view of my ReportViewer.aspx.cs
As you can see I am setting the Datasource of both the report and subreport from outside using DataSets that were retrieved from our class calls.
When I refresh the report having changed something in the SQL database that those methods retrieve the data from using Stored Procedure calls, the data is NOT updated in the report. For example, this is an Order Acknowledgement report, I ran the report, noticed a price error on an item, fixed it in the database and refreshed the report. The pricing did not change on the report. If I close the report and re-run it, it then shows the updated price.
The Report Viewer itself is simply: <telerik:ReportViewer ID="ReportViewer1" runat="server" style="border:1px solid #ccc;" width="99%" height="101%"/>
The reports contain no code at all in the code behinds, they are simply layouts for the datasets that are passed to them.