Aber mit single-blog.php klappt es auch nicht. Sprich ich habe die ganz normale single.php und dann noch die single-blog.php für die Beiträge der Kategorie Blog.
Schau dir nochmal den ersten Link von @maxe an. Eine Benennung mit single-{category}.php ist nicht vorgesehen. Deshalb kann das, was du vorhast, so nicht funktionieren...
@maxe hat dir aber zwei mögliche Wege verlinkt, die beide funktionieren werden.
Ich würde auch die Variante mit in_category() verwenden.
Alternativ, wenn das Markup nicht zwangsläufig anders sein muss, könntest du auch die Body-Klassen verwenden und nur das CSS entsprechend anpassen.
Edit: Sorry, erst gepostet, dann dein Beispiel angeschaut. Ist denn der Blog tatsächlich die Kategorie mit dem Namen 3? Weil eigentlich sollte das so funktionieren. Oder hat die Kategorie die ID 3? In dem Fall müsstest du wahrscheinlich die Anführungszeichen weglassen (int statt String)