David blames himself for not saving Emma because, in the episode "Siege Perilous" from Once Upon a Time, the Dwarfs express their frustration at Emma's situation, which weighs heavily on him. His sense of responsibility and the emotional impact of failing to protect Emma contribute to his self-blame. Arthur's distractions and issues with missing items further complicate David's feelings of inadequacy in dealing with the challenges facing them in Storybrooke (source).