I see this error when the data exceeds the defined size, for example, trying to write 4 characters to a field that is only defined as 3.

compare Special_Booked_Date and End_Date in SSMS and make sure they are the same data types, then compare the data types in vb and make sure they are same too.