Your “František” sentence is correct but I would not really call that a “literal” translation, as it does not explain the difference between rád and ráda (which both translate to “liking” in your approach).
I think that the mít rád… construct is a Czech specialty and cannot be analyzed “logically.” You could say “Žofie has beer being glad/happy” but what would you gain? I would appreciate a native speaker's opinion on this.
Maybe the expression can be compared to the German “gern haben.” But there the “gern” does not vary according to to the gender of the subject.
You cannot translate “mít rád(a)” literally; “rád(a)” alone does not mean likes but roughly glad or gladly done, and “má ráda” as a unit means likes.
BrinoPua's comment above makes an attempt at a literal translation but I really don't think it's possible, as I tried to explain in my answer. What are you gaining by saying “Žofie gladly has beer?” I suggest you accept the expression “má ráda” = likes as it is, without trying to analyze it.