Пожалуйста, попробуйте за пределами jsfiddle, возможно, jsfiddle применяет некоторое линейное преобразование.
Также, пожалуйста, убедитесь, что вы добавляете 0.5 везде к координатам x и y. Кроме того, вы можете применить translate (0.5, 0.5), чтобы сдвинуть все координаты на половину пикселя.