You know I think there is a way to tell the thing to DoRecolor in the script, it may actually recolor the icon, idk lemme check the Akimbo Guns icon.
...Ok, here is the code as taken directly from the Guns Akimbo:
//////////
// item //
//////////
datablock ItemData(AkimboGunItem)
{
category = "Weapon"; // Mission editor category
className = "Weapon"; // For inventory system
// Basic Item Properties
shapeFile = "Add-Ons/Weapon_Gun/pistol.dts";
rotate = false;
mass = 1;
density = 0.2;
elasticity = 0.2;
friction = 0.6;
emap = true;
//gui stuff
uiName = "Guns Akimbo";
iconName = "./Icon_2guns";
doColorShift = true;
colorShiftColor = "0.1 0.1 0.2 1.000";
// Dynamic properties defined by the scripts
image = AkimboGunImage;
canDrop = true;
Thusly, for a sword with a brown icon, edit the script as follows:
Find:
//gui stuff
uiName = "Sword";
iconName = "./icon_sword";
doColorShift = true;
colorShiftColor = "0.471 0.471 0.471 1.000";
And replace it with:
//gui stuff
uiName = "Sword";
iconName = "./icon_sword";
doColorShift = true;
colorShiftColor = "0.400 0.196 0 1.000";
Cause that is the same brown color that the Bow uses.