You have not shown any of the code from your
MyCon
class, which is where all the action takes place, but from your description it sounds as if the data is being loaded into the table (tbl) twice and is not being cleared before the fill.
Where
MyCon
uses it's DataAdapter.Fill() method clear the old data first:
ds.Tables("Bacon Sandwich").Clear()
da.Fill(ds, "Bacon Sandwich")