RIT dyes won't wash out, but they can take a long time to set in. Also, Tulip makes tie-dye dyes that come as powder in bottles. You can get them as a set or individually. As long as your fabric is 100% cotton, the colors will stay bright.
If you ever want to reuse the dress, you can make a really thin gravy and dye it red with food coloring. I used to make this for our training as an emt so we could judge the amount of blood a victim had lost.