As someone who has actually used the SR&ED program for many years, I have to say that you've got it a bit wrong...
SR&ED will cover a percentage of capital expenditures essential to the work and a percentage of $ paid to contractors so it's salary plus SOME eligible expenses. Salaries make up the biggest part though. I got about 65% back, using the proxy method - a simpler way of calculating SR&ED overhead on eligible salary expenses.
The R&D effort does not have to advance "the world's" state of technology, just your company's.
It can't be obvious or routine engineering BUT work that is required to complete the R&D work (but not directly R&D) IS eligible and you can claim it.
The 3 core requirements of SR&ED eligibility (for software anyway) are (1) there has to be technical uncertainty, (2) you must use a systematic approach and keep records a notes and (3) you must achieve a technological advancement.
The 3rd item catches people because it doesn't require a successful outcome. You can fail and still claim the project. If you knew in advance (or it was obvious to anyone in the field) that it would fail (or succeed) then there was no uncertainty and it would not qualify.
SR&ED is really not that difficult to navigate. Consultants can help, but they'll take a big chunk of your claim. Most of them work for a percentage that runs anywhere from 15% to 35%. That's big money for very little value. I wrote my own claims for many years and they were all successful.
When I started there was no limit on the write ups, now they put some severe character count limits on the writes ups. That makes them harder for us but less confusing for the reviewers. You really have to be able to distill things down to just the essentials.
Any Canadian software company that doesn't at least look at SR&ED is just throwing money out the window.