A program should delete images when they are no longer needed, however this does not necessarily mean that it is your code that should do this.
In the first example, when you do:
this.Icon = Resources.my_default_icon;
ResourceManager. Resource.Designer.cs, .
"" . , , , ResourceManager ( , )
:
this.Icon = MyBrandingClass.formIcon;
ResourceManager .
MyBrandingClass , , . ? MyBrandingClass . , , MyBrandingClass, , .
, , , MyBrandingClass ResourceManager. , , ResourceManager (, MyBrandingClass). , Resource.Designer.cs, , , , ResourceManager (, ?)
, , , Resource. , , " ". , , . , , , . , , , ( ).