En cuanto al VB.Net:
¿Qué tipo de controles son DateTimeInicio y DateTimeFin?
¿DateTimePicker o TextBox?
Respecto a MySQL:
No veo que estés abriendo la conexión luego de crearla:
Código vb.net:
Ver originalcn = New MySqlConnection
cn.ConnectionString = "server= localhost;" & "user id=root; password=root ;database=bd_mcgregor"
cn.Open() '<-- Esto no lo estas haciendo, y el MysqlCommand no se crea bien si no está abierta la conexion
Dim cmdEjecucion As New MySqlCommand("SELECT * " & "FROM ejecucion WHERE Fecha_Emision BETWEEN STR_TO_DATE('" & Me.DateTimeInicio.Text & "', '%d/%m/%Y') and STR_TO_DATE('" & Me.DateTimeFin.Text & "', '%d/%m/%Y');", cn)