Δεν μπορώ να καταλάβω γιατί του συμβαίνει αυτό ούτε μπορώ να το αναπαραγάγω, κανονικά δεν θα πρέπει...
Όπως και να έχει, μπορείς να χρησιμοποιήσεις την μέθοδο GetCharIndexFromPosition του TextBox η οποία πέρνει όρισμα ένα point. Στο MouseDown event έχεις το point που σε ενδιαφέρει, οπότε φαντάζομαι μπορείς να πεις κάτι σαν το παρακάτω:
Private Sub TextBox1_MouseDown(ByVal sender As System.Object, _
ByVal e As System.Windows.Forms.MouseEventArgs) _
Handles TextBox1.MouseDown
TextBox1.SelectionStart = TextBox1.GetCharIndexFromPosition(e.Location)
End Sub
Vir prudens non contra ventum mingit