My narrowminded girlfriend is trying to tell me that someone "can't write music about something and say it means something else (I used rape as a metaphore for being abused / used) you can't write a song about red and say you were thinking about blue when you did it!"

According to her. I told her you can have any meaning behind your lyrics that you want as long as it is what you want. Am I right?
Technically, you can write about anything, as it's for yourself, and should hold meaning to YOU. In fact it's annoying when lyrics are too literal and hold no deeper meaning. BTW, you should post this in the questions thread up top, as this will likely be closed (check FAQ)