Leyendas de ggplot cuando la trama se construye desde dos marcos de datos

Tengo datos provenientes de dos marcos de datos diferentes. Estoy tratando de crear una leyenda para cada marco de datos. Sé que puedo combinar el marco de datos y hacerlo, pero debido a mi fuente de datos, tiene más sentido trazar desde dos marcos de datos diferentes.

Encuentre el ejemplo simplificado a continuación. Me he acercado pero el 'Pronóstico principal' en la leyenda es solo de color blanco. Quiero mostrar dónde el 'Pronóstico principal' es rojo en el exterior y blanco en el interior.

x = seq(1,10, 1)
y = seq(10,100, 10)

df  = data.frame(x=x, y=y)
df2 = data.frame(x=5, y=50)

p = ggplot(data=df) + 
  geom_point(data=df,aes(x=x, y=y, color="Weekly Forecast"), fill="red", size=5, shape=16)  + 
  geom_line(data=df,aes(x=x, y=y), color="red", size=1)  + 
  geom_point(data=df2, aes(x=x, y=y, color="Main Forecast"), size=2, shape=16)  +
  scale_color_manual("Legend Title", breaks=c("Weekly Forecast", "Main Forecast"), values = c("white","red"))
p

Cualquier ayuda será muy apreciada.

Respuestas a la pregunta(1)

Su respuesta a la pregunta