"Her English skill is not bad."
I know it's optional (since I was marked correct without it) but when is 很 required for '很不错'?
The 很 is not grammatically required (because there is a 不) so you would only use 很 when you actually want to say very.
The English sentence here feels clunky to me. I would change it for either "Her English skills are not bad" or "Her English is not bad". The first is probably better, since the use of the word "skills" hints at 水平
There are cases where you can leave out the 的 but this is not one of them. In a phrase "Noun1的Noun2" you can generally only leave out 的 if Noun2 denotes a personal relationship with Noun1 (e.g. family member, friend, teacher etc), or if Noun2 denotes some sort of institution that Noun1 is part of (company, school, country etc). Also in both cases Noun1 has to be a personal pronoun, otherwise 的 is still required.
In our case, 英语水平 is neither a personal relationship with 她 nor an institution, so 的 is required.
EDIT: I just thought about something: You could indeed say 她英语水平很不错。 However, that changes the sentence structure quite drastically. Technically in Chinese you’re not saying “her English skill” at all, but rather: “As for her, the English skill is not bad.” As a result, the sentence gives a slightly different feeling. To me it sounds like the speaker is saying this sentence as an introduction to a contrast. Maybe her English skill is good but her Chinese skill is abysmal. Or maybe she can speak English well but her friend doesn’t.
So yes, I guess 她英语水平很不错 should be accepted, but that’s more of a coincidence than anything else: *她英语水平 is still not a cohesive phrase “her English skill”, it just so happens that the resulting sentence would still have to be translated in the same way because English doesn’t do topicalisation as extensively as is possible in Chinese.