Declan Rudd had a moment forget after Maikel Kieftenbeld's tame effort from 35 yards out bobbled between the goalkeeper's legs to give Birmingham the lead against Preston.