There are plenty of functions for this kind of operation in XPath 2.0. Append ":00", cast to an xs:dateTime value, then use the adjustDateTimeToTimezone function.
In 1.0 you might find something useful in the EXSLT date/time library at
www.exslt.org.
If not, you can do it yourself: split the string into its components using substring(), convert to numbers, perform addition/subtraction as required, reconstitute the string.
Michael Kay
http://www.saxonica.com/
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference