Welcome to management! And scheduling is often the biggest bugaboo that some managers have to deal with. Also, most managers have little formal training and even if they do, the personnel issues rarely go "by the book."
Both toto and Miss May gave you great advice.
One technique I use is to tell the person who is clearly unhappy in their job, is to tell them they obviously are unhappy, to clock out, go home, and take the day to decide if they want this job or not. And, they are to let me know the next morning. Yeah, it puts a bit more on everyone that day, but the offending employee is generally such a drag on morale, things go better anyway.
I also recommend writing this incident down. At this point you don't have to treat it as a write up and have the person sign, but document your conversation, the having them clock out, and what they decide. Make the effort to read the companies policy on disciplinary action and write ups. It will serve you well the rest of your life even after you leave this company.
If you need to, if the person tends to bring up multiple complaints and accuses you and others of multiple wrongs, write your issues down to help keep you focused. The one or ones that need to be addressed by him/her in the workplace as an employee. You are responsible to the company to see that employees are doing the jobs they agreed to do, and you are in control of the conversation.
Good luck. Don't let it get to you personally, like Miss May said. Your employee may have some "issues" but you didn't cause them and you can't cure them.