You should post one (or more) of your games like this so we can see the specific situation(s).
How Do You Defend Against the Classical h7 Bishop Sacrifice?

The art of attack in chess has a chapter on the classic bishop sac. that breaks everything down so you can basically look at the position and tell weather or not it will work without much calculation. After reading that chapter I've used the bishop sac on h2/h7 to win more games then I can count.
Here's a game I just finished today.

Well, I don't see why white would play Kh3??. Seems that 16. Kg3 Nf6 Ndxe4 Nh5+ Kf3 Nh2+ Ke2 Nxf1 Rxf1 is simply winning for white doesn't it? Strong pieces, relatively safe king, better development, and two pieces for a rook. I don't see how white could lose.
I have found it increasingly difficult to protect my castles king against the classical bishop sacrifice. On both h7 and f7, it is becoming a popular to tactic to sacrifice a piece, most notably the bishop, to draw an opposing king into a vulnerable position.
I have been having trouble handling these sacrifices. In most of these scenarios, I end up losing a pawn in material, and sometimes the initiative, because I decline the sacrifice. When I take, though, my king is almost always subject to attack from my opponents queen and remaining minor pieces. I have tried to keep a watch on both of these squares; however, it is practically impossible to protect both the f7 and h7 squares, assuming I don't want to tie a knight or a bishop down to defend them. And even if I can defend both squares, the defense around my king becomes considerably weaker if a bishop is sacrificed.
So, what should I do to handle the bishop sacrifice? I can't seem to find any books on defensive strategies, much less one that specifically covers how to weaken a bishop sac. What should I do?