well how the heck are you supposed to know if you did it before then?! i feel like if it lets you do it AND you've never done a hit by that requester, there is no reason they should reject (unless you answer one of their "are you reading this" questions wrong)
Requesters can reject for any reason they like, or no reason at all.
You can use HIT DB or some other method to try to keep track of HITs you've done and requesters you've worked for but sometimes they re-post surveys under different HIT titles or change requester names. Some requesters will put in checks or have methods to screen out workers who have participated before, but others don't. Unfortunately, it's not a perfect system.