It looks to me as if something else is writing to it, the top rung shows it at 0.0 however from the real to integer it shows 23 as it should the scale is set to 23 as the low limit so 2452 will show zero, I would ignore the zero in 2451 for now according to your scaler the value can only be between 23 & 42 to get 0-100 out, you need to get a value say 30 in the maths & see if it gives you the correct value in 2452. I have seen this before and is usually because the register is used elsewhere, however in this case it would not matter as it's value is set according to the maths functions and then scaled & transferred to another so even if 2451 is used before or after it will not make any difference. I'm not familiar with this plc but many use some of the higher end registers as work areas so when compiled these are allocated as temps (Mitsubishi is a classic example). Due to the update of the communications the register values may be read at different times not directly while you are monitoring a particular bit of logic.
Just a thought do you need 2451 can you tie the Add output directly to the real to int function (As I said I have never used GE and I do not know if there are limits on how many instructions you can have in one line.