I have worked on this for the good part of the day, I even restarted from scratch, but I am working on each function one by one and I am unable to get day to change when I call plusOneDay.
Problem found. You have a conflict on your functions. Your plusOneDay function returns a string, but does not change the day inside the class instance. So when you run print day it prints the value of the unchanged day. What you need to do is change you plusOne, minusOne to have day += 1; before the return and maybe even change them to void functions and remove the toName call inside them completely. That's why you have printDay.
Thanks. It worked, but I needed the Monday object to remain Monday. I realized all had to do was cout the plusOneDay to the screen to get my required result. Your answer however, gave me an answer to the use of assigments to get things done. Thanks again.