Пожалуй, правильно. Если сказать "во дворе весна", то можно подумать, что весна только в отдельно взятом дворе, а в соседних дворах - осень ;). Если под двором подразумевается все, что за пределами дома, внешний мир, тогда можно и "на дворе" сказать.