La leyenda ggplot no funciona con scale_colour_manual

Sé que se ha hecho una pregunta idéntica anteriormente.Leyenda ggplot - scale_colour_manual no funciona

Pero la pregunta involucra un conjunto de datos algo complicado que el que tengo aquí y la respuesta sugiere la reestructuración de datos y luego funciona con datos reestructurados. Pero el problema persiste incluso con datos simples como los que tengo a continuación y no puedo resolverlos. Así que no lo marques como duplicado.

El problema: cuando se usascale_colour_manual en ggplot2, la leyenda no se muestra.

p <- data.frame(a = runif(10, 1, 2))
ggplot(data=p, aes(x=a)) +
  geom_histogram() +
  geom_vline(aes(xintercept=mean(p$a), colour="mea")) +
  geom_vline(aes(xintercept=median(p$a), colour="med")) +
  scale_colour_manual(name="Statistic",
                      values=c("med"= "red", "mea"="green"))

Cualquier ayuda es apreciada.

Respuestas a la pregunta(1)

Su respuesta a la pregunta