This is really a sticky situation. It's these types of things that can lead to sentinel events. There had to be a sequence of errors to lead to a patient getting the wrongly prescribed medication. That sequence involves you identifying the wrong person for the wrong medication, the pharmacy issuing that medication and the nurse administering it. Sometimes the patient can catch it and you get a near miss. But this is definitely something that SHOULD be reported. You should discuss the situation with the primary care team (i.e. the attending should know before anyone else) and then notify risk management of the situation as well as the program director/division head.
The person responsible for the order and ideally the person that has the best rapport with the patient should then explain all of the facts to the patient, explaining a mistake has happened, apologizing for the mistake, the consequences of that mistake (likely not much besides a bunch of trips to the bathroom in the case of a bowel prep), and how you're planning on ensuring this doesn't happen again (i.e. this is where the matter should be reported to the hospital to ensure there's better verification of medications with bar coding the medications and patient identification, etc.).
Above all else in a case like this it's best not to cover things up. People are smart and generally forgiving if no harm is done. But people get very pissed off if they're lied to. Mistakes happen and most people, if no harm is done, will grumble but eventually they'll get over it. But if the patient/family feels like something is covered up you can believe that the s*** will DEFINITELY hit the fan. Multiple studies (which I'm too tired to reference at this moment) back this up.