You need to have this in your ChangeColumnWidth() method :
If ListControl.GetColumnCount() > 0 Then
ListControl.SetColumnWidth(4,ListWidth - (20 + 140 + 120 + 40))
End If
to stop it crashing on Mac.
Seems on Mac there's a resize event before you get to add the columns.