The problem here seems to be that your system builds rows of tiles starting from the top to the right corner, then working to the lower left edge. Since the initial coordinates for your first tile are 0,0 when it's drawing subsequenct rows to the left they quickly disappear off screen.
The easiest solution to this would just be to right shift the x coordinate so it starts drawing the top tile from the middle of the area whilst remembering we want the centre of the tile to be in the centre of the area, not it's top left edge. So something like
int isox = (Width / 2) - (tileLength / 2) + x - y;