OSX uses slightly different trick - it creates a framebuffer that is @2 scale and lets the hardware to scale it down. (iOS goes even further and has @3 scaling).
Which is the right approach - for example, one of the rMBP options is to have 1440x900 (2880x1800) resolution, which to the native 2560x1600 is the ratio 9/8. Nobody is going to track that 9-th pixel for each block of 8 pixels in software. Using hw scaler is simpler, cheaper and has smaller margin for errors.
Frankly, implementing fractional scaling is waste of time, resources and would produce software that is slow, buggy and bloated.