Seeing people you've previously said 'no' to is actually by design. Our studies and testing found that often people's minds change about someone between sessions. Essentially, we're optimized for our members' changing/evolving tastes.
We'll only show you people you've already skipped if you have run out of new people to see. Sometimes, having a set of very specific preferences can result in a smaller pool of new people, so if you see someone you've already skipped, that means you've seen all possible new potentials for that session.