Is this for Windows or Mint? (Both are in your signature).
In Windows, the icons are drawn in the TShellTreeView by calling OS routines, without explicitely using the ImageList and ImageIndex and SelectedIndex properties.
If you attach an ImageList to the tree and define an ImageIndex/SelectedIndex for each node, and set UseBuiltinIcons to false, then you have full control over the icons displayed. This also happens in Linux by default where the Windows solution could not be applied.