While customization of icons of normal folders is supported by Windows (from the properties panel), things are not that easy with root folders of drives.
There are 2 ways how to customize icons of drives:
This method is recommended for removable drives. It may take some time, until Windows detects the change and refreshes the icon.
To customize an icon of a USB drive, create a file named autorun.inf in its root folder. Use Notepad to create that file. When saving the file, make sure that the file type is not set to text files. If it is, the .txt extension will be added to the given filename (and you'll end up with autorun.inf.txt, which would not work).
Put these 2 lines into the autorun.inf file:
[autorun] icon=''icon_filename'', ''number''
If you are using an .ico file, you need not specify the number. The number is only used if an icon from a .dll file (with more than 1 icon) is used.
The path to icon may be relative to the autorun.inf file. This is recommended if the icon is on a removable USB drive, which may be given a different letter on different computers.
This method allows you to change default drive icons on your computer. If a drive icon is customized using the autorun.inf file, the autorun.inf icon takes precedence.
Also, this method requires modification of Windows registry. If you unsure how to do it, it is not recommended to continue.
You can also modify the default drive label by creating a DefaultLabel key and setting its default value to the requested label.
Reboot your computer after the change.