if guide_legend(reverse=TRUE) is not enough (for factors with several levels)
try
levels(my.df$parent.origin)
[1] "maternal" "paternal"
my.df$parent.origin <- factor(my.df$parent.origin, levels = c("paternal", "maternal"))
> levels(my.df$parent.origin)
[1] "paternal" "maternal"
ggplot(data = my.df, aes(factor(replicate), color = parent.origin)) +
geom_boxplot(aes(fill = parent.origin,lower = mean - std.dev, 
                 upper = mean + std.dev, middle = mean, 
                 ymin = mean - 3*std.dev, ymax = mean + 3*std.dev), 
             position = position_dodge(width = 0), width = 0.5, 
             alpha = 0.5, stat="identity") +
  facet_wrap(~group, ncol = 4) +
  scale_fill_manual(values = c('maternal' = "red", 'paternal' = "blue"), name = "parental allele") +
  scale_colour_manual(values = c('maternal' = "red", 'paternal' = "blue"), name = "parental allele")
