Yo se, pero para responderte lo debo hacer en el foro de .Net.
Eso es BBDD, y las normas del foro especifican que no se debe poner código de programación en éste (
Función de la Sección de Bases de Datos).
Puedo, si decirte que para convertir un valor de un control a una cadena de texto que puedes usar en una sentencia SQL, debes indicarle específicamente que lo haga, cosas que no estás haciendo. Lo que tu haces es tomar el valor del control, pero el valor del control no es una cadena, es un objeto de clase DateTime.
Explora los métodos de esa clase y busca el que convierte el dato a cadena.
No te olvides que al programar en VB/VB.Net estás programando con objetos...