The burning question in everyone's mind after reading "Half-Blood Prince" most certainly is "why did Dumbledore trust him?"
Trust is a word that is the key to secrets and secrets are the key to betrayal, that's the feeling I get when I speak to other people about this particular theory. Snape betrayed Dumbledore and murdered him ruthlessly... in front of Death Eaters. Dumbledore pleaded, "Severus... please..." but to no avail. "Avada Kedavra." The words spilled out from Snape's lips as effortlessly as a snake wrapping itself around its prey. Snape broke Dumbledore's trust. Or did he?
Dumbledore was the most powerful wizard in existance. He was wise beyond years and had the greatest mind the Wizarding world had seen in ages. Even Voldemort was frightened of him. But the most touching thing about Dumbledore was his faith in man. When had Dumbledore ever steered anybody wrong? You can't respond because Dumbledore had never misled anyone. Why, after everything else Harry put stock into, did he not believe in Dumbledore's faith in Snape? Harry has never liked Snape, a great deal of it stemming from his knowledge of the Marauder days. A more important question: Why, after everything you put stock into, did you not believe in Dumbledore's faith in Snape either?
Dumbledore was an excellent judge of character. He demonstrated that time and time again from experiences with young Tom Riddle, Karkaroff, and so on. If there is one thing that Dumbledore could not be mistaken about, it was his judge of character. He admitted he was capable of mistakes; all humans are. He was right about Slughorn- whose cupidity is appalling, but he's decent nonetheless- and Hagrid and countless others. What made him wrong about Snape?
Keep this in mind: Snape cannot blow his cover. He must do what it takes to keep his position, and Dumbledore was aware of this. Bellatrix was already suspicious of Snape. Furthermore, Dumbledore had Harry swear an oath to do whatever it took to get the former to drink the potion, what makes you think he didn't have Snape swear one to kill him if necessary?
Gargantuan story short, Dumbledore was an excellent judge of character; Harry does not know any of the circumstances under which Dumbledore developed his trust for Snape. Harry assumed (which, as he was under extreme duress and agitation, is thoroughly understandable), but what happened when he last assumed something so grandiose? Think Sirius.