Ensure that pixels are aligned when rendering icons

I am playing with the Icon example . I change the icon path to my own png  path , the final image in canvas is  blur and it's even worse when my png is small(18x18).Can I fix it ?