Excel does not pay any attention to cell format when you reference a numeric cell in a formula. In fact, if the value in A1 were 123.543 formatted to display 2 decimal places (appears to be 123.54), RIGHT(A1) would return 3.
If you always want the 2nd decimal place (rounded), write RIGHT(TEXT(A1,"0.00")).
However, if you always want the right-most displayed digit (character), I think you will need to use a VBA function. For example:
Function myRight(c As Range, n As Long) As Variant
myRight = Right(c(1).Text, n)
End Function