Did you put it in your tf/custom/scripts folder?
Also the code you pasted looks funny, you have 2 extra copies of the "HudCrosshair" at the very end with unmatched curly braces?? I would try deleting those as well, specifically, just use this:
"HudCrosshair"
{
"ControlName" "ImagePanel"
"fieldName" "HudCrosshair"
"xpos" "c-1"
"ypos" "c-1"
"zpos" "1"
"wide" "2"
"tall" "2"
"autoResize" "0"
"pinCorner" "0"
"visible" "1"
"fillcolor" "0 0 0 255"
"enabled" "1"
"scaleImage" "0"
}
// Top ////////////////////////////////////////
"HudCrosshairTop"
{
"ControlName" "ImagePanel"
"fieldName" "HudCrosshairTop"
"xpos" "c-10"
"ypos" "c-10"
"zpos" "1"
"wide" "20"
"tall" "1"
"autoResize" "0"
"pinCorner" "0"
"visible" "1"
"fillcolor" "0 0 0 255"
"enabled" "1"
"scaleImage" "0"
}
// Bottom ////////////////////////////////////////
"HudCrosshairBottom"
{
"ControlName" "ImagePanel"
"fieldName" "HudCrosshairBottom"
"xpos" "c-10"
"ypos" "c+10"
"zpos" "1"
"wide" "20"
"tall" "1"
"autoResize" "0"
"pinCorner" "0"
"visible" "1"
"fillcolor" "0 0 0 255"
"enabled" "1"
"scaleImage" "0"
}
// Left ////////////////////////////////////////
"HudCrosshairLeft"
{
"ControlName" "ImagePanel"
"fieldName" "HudCrosshairLeft"
"xpos" "c-10"
"ypos" "c-10"
"zpos" "1"
"wide" "1"
"tall" "20"
"autoResize" "0"
"pinCorner" "0"
"visible" "1"
"fillcolor" "255 255 255 255"
"enabled" "1"
"scaleImage" "0"
}
// Right ////////////////////////////////////////
"HudCrosshairRight"
{
"ControlName" "ImagePanel"
"fieldName" "HudCrosshairRight"
"xpos" "c+10"
"ypos" "c-10"
"zpos" "1"
"wide" "1"
"tall" "20"
"autoResize" "0"
"pinCorner" "0"
"visible" "1"
"fillcolor" "255 255 255 255"
"enabled" "1"
"scaleImage" "0"
}