I do not have time to check the results of switching the comparison operator, but having said this, removal of the integer cast part is definitely a mistake - without this the macro ceases to perform the intended operation. Since I believe that getting a "correct" result when using the >= over the > probably requires the integer cast to be removed, this whole 'fix' is completely worthless.
Perhaps you could post some relevant information - such as some values passed in, the results you're getting out, the results you think you should have received, and why you believe the ones you're getting are incorrect?
CE