Here's a link that shows many formatting values for the DateTime.ToString() method. I see no lower case "r" mentioned but the output of your code seems be the same with "R" or "r".
http://msdn.microsoft.com/en-us/library/zdtaw1bw.aspx
The DateTime value that you are writing to the file would be based on the invariant culture before any culture changes. You write it out and the you read it back in before getting some new culture information.
I had to guess at what you were asking because there is no question anywhere but in the code. Please provide more detail if I misunderstood what you are asking about.
Maybe if you were to show your output, it would help.
Ah, and here's a link that actually says that "r" is the same as "R". So now you have documentation for that part of your question: