Before you loop through the data, loop through the columns once:
For i = 0 To ds.Tables(0).Columns.Count - 1
dxlWorkSheet.Cells(1, i) = ds.Tables(0).Columns.ColumnName
Next
Change the loop you wrote for the data to start one row below this.
Change This
<br />
xlWorkSheet.Cells(i + 1, j + 1) = ds.Tables(0).Rows(i).Item(j)<br />
To This
<br />
xlWorkSheet.Cells(i + <big>2</big>, j + 1) = ds.Tables(0).Rows(i).Item(j)<br />