First problem you have is that you're aliasing the converted field as the same name and then also selecting *. So you have LastVisitDate being returned twice. You might be getting the wrong one back.
So, first try giving it a unique alias:
Select convert(varchar,LastVisitDate,103) as LastVisitDate2, * ......
If style 103 isn't working for you, try style 101.
Select convert(varchar,LastVisitDate,101) as LastVisitDate2, * ......
And if that still doesn't work, try this:
Select Cast(Day(LastVisitDate) as varchar) + '/' + Cast(Month(LastVisitDate) as varchar) + '/' + Cast(Year(LastVisitDate) as varchar) as LastVisitDate2, * ....