Crear una columna de botón DataGridViewButtonColumn con imagen

Gracias a esta página encontré una forma para agregar una imagen a una columna botón de un DataGridView

Crear una columna de botones con imagen usando la clase DataGridViewButtonColumn

El link indicado está en C#, así que lo cambié a VB.Net

Private Sub DataGridView1_CellPainting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) _
Handles DataGridView1.CellPainting
        If e.ColumnIndex >= 0 AndAlso DataGridView1.Columns(e.ColumnIndex).Name = "icono" _
        AndAlso e.RowIndex >= 0 Then
                e.Paint(e.CellBounds, DataGridViewPaintParts.All)
                Dim celBoton As DataGridViewButtonCell = _
                TryCast(DataGridView1.Rows(e.RowIndex).Cells("icono"), DataGridViewButtonCell)
                Dim icoAtomico As New Icon(Environment.CurrentDirectory + "\icono.ico")
                e.Graphics.DrawIcon(icoAtomico, e.CellBounds.Left + 3, e.CellBounds.Top + 3)
                DataGridView1.Rows(e.RowIndex).Height = icoAtomico.Height + 10
                DataGridView1.Columns(e.ColumnIndex).Width = icoAtomico.Width + 10
                e.Handled = True
        End If
End Sub

Nota: El icono tiene que estar en la ruta que se encuentra el ejecutable.