Grading on the curve assumes that all student cohorts are pretty similar, but that some courses/exams are easy and some are hard.
No it doesn't. It's trying to match non-random data-points to a random distribution curve. It says nothing about the difficulty of the exam.
Is it more difficult to roll a 3 on a d6 than it is to roll a 6? Of course not. It's random. But it is more difficult to roll 3d6 and get 18.
Your way assumes that all courses are exactly as hard as each other, but makes no assumptions about the other students.
Why would it need to make any assumptions about other students? Whether I know X is not dependent upon whether you know X. Or even if you do not know X.
A. Take the top 10 coders in the Linux kernel. Now "grade" them on a curve (compared to each other).
B. Now take the 10 worst coders in the world. "Grade" them on a curve (compared to each other).
What does that tell you about the skill levels between the "average" 2.5 people in A and the "exceptional" 4.0 person in B? And THAT is why grading on a curve is a bad idea.