I am assuming that you always get - 98...because it is the last if statement, always, irregardless of what the field value is. I would think you would want to do as c16271 suggests
if x = 2013 and y = 'jan' then 12 ...stop, the else is always
or
if x = 2013 and y = 'jan' then 12 ...stop, the else is always
if x = 2013 and y <> 'jan' then 13 ...i think this is what you are after
or
if y = 'jan' then
'-' + right(totext(x -1, "", 0), 2)
else
'-' + right(totext(x, "",0), 2)
which would be much more dynamic, again, as c16271 suggests.
HTH