leap needs more of a delay between geatures. there is a property on the NSGesture object to adjust how long a gesture is performed before firing an event. switching between scrolling and zooming randomly is just poor programming, not the accuracy of the device.