After some experimenting, I've come now to the conclusion that RoundTo is not the solution to the problem.
RoundTo is a function that rounds a real number to a given number of digits after the comma, so that, in principle, for example:
a := 2,3658;
b := RoundTo(a,-2);
-> b = 2,37
but the result number can still be affected by the said small error, so that you get something like, say:
-> b = 2,37000000000002
As I manage numbers with at most 2 digits after the comma, I find the best solution to make comparisons is something like:
if (Round(100*a) >= Round(100*b)) then
.....
I hope my experience can be useful to somebody in the future.