I have a khash/s rate of 300. It's working off of a Radeon 6870.
It's mhash/s. Don't mix up those two. 300 khash/s would be really bad
You have some configuration problem. At that speed you should be making lots of shares.
excuse the noob question but,
how exactly is a share made? i mean what criteria must the miner meet to make a share?
I am no expert and the details behind share creation and verification aren't simple. I like to think that a share is simply a bunch of hashes that you must calculate. After you are done, you send these calculations to the pool server and it replies something like: "You haven't found a block, but you have been working so here's a little reward".
You can find more info at the wiki