Yea, there is definitely a fine line between being scrappy and being cheap.
The highest quality candidates can typically provide a benefit that easily outweighs a few percentage points in their annual salary, especially in the software world. A great developer is your product and walks out every evening with knowledge of the duct-tape, the spaghetti code, and the bugs throughout the system. Its easier to be nice to them.
So true, they walk out with your IP every night. That's a great point. It's far better to pay them a comfortable wage as security of your proprietary tech.