Okay, let’s do it the long way.
If Cheryl had whispered “19” to Bernard, then he would instantly know that her birthday is May 19th, because May 19th is the only “19” on the list. Similarly, if she had whispered “18,” Bernard would know that her birthday is June 18th, because June 18th is the only “18” on the list. These are the only unique numbers in the list - if she tells Bernard “14,” “15,” “16,” or “17,” then he can’t know which month she was born in, because each of those numbers appears in at least two months.
Now for Albert. If Cheryl whispers “May” to Albert, it raises the possibility that she whispered “19” to Bernard - in which case he would know her birthday is May 19th. Similarly, if she whispers “June,” it raises the possibility that she whispered “18” to Bernard - in which case he would know that her birthday is June 18th. So if Albert knows that Bernard doesn’t know her birthday, it can only be because those possibilities were eliminated entirely just by knowing the month - in other words, she didn’t tell Albert “May” or “June.” That leaves July and August.
Back to Bernard. He, being almost as clever as a Doper, has worked out all of the above from what Albert said. So now let’s game out the other dates:
If Cheryl told Bernard “14,” he still can’t tell what month she was born in, because July 14th and August 14th are both on the list.
If Cheryl told Bernard “15,” then he now knows she was born on August 15th, because that’s the only 15 on the list.
If Cheryl told Bernard “16,” then he now knows she was born on July 16th, because that’s the only 16 on the list.
If Cheryl told Bernard “17,” then he now knows she was born on August 17th, because that’s the only 17 on the list.
So if Bernard declares confidently that he now knows Cheryl’s birthday, it’s because it’s either August 15th, July 16th, or August 17th.
Back to Albert. He, being almost as clever as Bernard, has also worked out all of the above possibilities, and confidently declares that he, too, now knows Cheryl’s birthday. If Cheryl had told him “August,” he wouldn’t be able to do that, because there are two possible dates in August, the 15th and the 17th. So if Albert knows Cheryl’s birthday, it can only be because she told him “July,” thereby eliminating the dates in August. This leaves the one remaining date - which, huzzah, is in July - July 16th.