Trying to avoid spoilers here . . . my minor problems regard the lottery and how it's conducted. Names are written on vellum and then drawn randomly. No one could opt out really as no one leaves and everyone knows everyone.
Problem #1: The people are illiterate, so they are trusting the reader with their lives. In a small community, that doesn't seem too far fetched that someone would have such an illustrious reputation given that the people have likely lived there for generations. Still, someone is going to have a problem with it, so to bypass the literacy issue perhaps each villager has a mark of some sort, a symbol that is effectively their signature?
Problem#2: The use of vellum, a very rare and expensive commodity. The lottery has been going on for approximately 10 months and may have occurred as much as a hundred times, so the sheets are being reused, but it still seems like some cheaper material would serve just as well. Perhaps some rocks or pieces of wood would work? I'm not a math person, but it seems that a grid of dots would be easy to make, could easily have more than enough variations to have a unique signature for each villager, and would not require one to know how to read.
Obviously I'm thinking too much about this one
I'm curious what others thoughts are on the matter.