Problem solved!!!
It seems that this doc is misleading -> http://wiki.freeswitch.org/wiki/Channel_Variables#Channel_Variable_Manipulation
not all sip headers are gonna be parsed only the ones which start with X- or P- the rest are not parsed because they are not supposed to exist, however in my case they do and the only solution I've found to parse my CISCO headers is
modifying the mod_sofia, file sofia.c line 6515, I added the last OR condition.
} else if (!strncasecmp(un->un_name, "X-", 2) || !strncasecmp(un->un_name, "P-", 2)
|| !strncasecmp(un->un_name, "Cisco", 5)) {
and now I can retrieve this header from the dialplan just like this:
<action application="log" data="INFO ->${sip_h_Cisco-Guid}"/>
Thanks to Swk.
        
<br/><hr align="left" width="300" />
View this message in context: <a href="http://freeswitch-users.2379917.n2.nabble.com/Sip-Headers-advice-Not-parsing-properly-tp6606461p6641160.html">Re: Sip Headers advice (Not parsing properly)</a><br/>
Sent from the <a href="http://freeswitch-users.2379917.n2.nabble.com/">freeswitch-users mailing list archive</a> at Nabble.com.<br/>