Yes! Use the numeric processor, NOT the (really troublesome) symbolic processor
The cause of this "beautiful" result is because the symbolics don't know anything about units and treats them as unknown variables. So when you demand and assume that c>0, it has to consider various cases depending on the "value" of cm.
So you should tell Prime that cm is greater than 0.
Furthermore Prime has very limited and rudimentary support for units in symbolics which you can activate on the "calculation" ribbon.
The combination of enabling unit support in symbolics and assuming cm>0 does the job (it may be necessary to let Prime recalculate the sheet to see the effect.
You may also have noticed that the result even gets worse when you omit the inline evaluation an conversion to cm at the definition of b. The symbolics does not know that 1 m = 100 cm and so you would have to tell it that via the "substitute" command.