Si, porque el DataGridView no sale del modo de edición hasta que abandonas la celda.
Si quieres que el evento CellValueChanged salte cuando el usuario modifique el checkbox deberás confirmar los cambios en el evento CurrentCellDirtyStateChanged del DataGridView:
Private Sub DataGridView1_CurrentCellDirtyStateChanged(sender As Object, e As EventArgs) Handles DataGridView1.CurrentCellDirtyStateChanged
If DataGridView1.CurrentCell.OwningColumn.Name = "CheckColumn" Then
DataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit)
End If
End Sub
Píldoras .NET
Artículos, tutoriales y ejemplos de código .NET
Píldoras JS
Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...