I'll be honest with you.
If you did minimal to no prep and and the rock was as cheap as you said, then yes, you came out fine.
We would have been around the 375-425 range, but our river rock is closer to 50 a ton.
The fabric we also use comes in a 4x400 roll that costs 90 bucks a roll.
But, I would have also would have used landscape staples to hold the fabric in place that would have been another 25 bucks.
Now, if there was more prep work involved, that included edging of some sort, grading, etc.... then your 300 would have been on the short side of the spectrum.
Some guys will say you didn't charge enough, but that's not true. There is still a market value for this type of service. Where you make your money and stay within a competitive pricing structure is when you have 3 of these types of jobs to do in one day.