Allora per adesso ho risolt usando l'evento RowStateChanged.

E' chiaramente un rattoppo ma almeno funziona! Agisco sulla singola riga dopo il binding della stessa (quindi ho i dati nelle celle a differenza di rowAdded, rowValidated ecc ecc) a quanto pare!

codice:
    Private Sub miaDGV_RowStateChanged(sender As Object, e As DataGridViewRowStateChangedEventArgs) Handles miaDGV.RowStateChanged
        If e.Row.Cells(3).Value = True Then
            e.Row.Cells(4).Value = My.Resources.redArrow16
        Else
            e.Row.Cells(4).Value = My.Resources.greenArrow16
        End If
    End Sub

Non sono molto pratica di questo evento e tantomento di come strutturalmente lavori un BindingSource quindi sono andata a tentativi e nel vedere che tutto funziona mi sono fermata.

Però se qualcuno più informato ed esperto volesse sollevarmi qualche dubbio o possibile problema futuro dall'utilizzo di questo metodo gliene sarei grata!

Ciao a tutti!