G is a Premium Economy fare class (not Comfort+) on DL, so I'm assuming OP was booked in Premium Economy on a code-shared VS flight. When OP upgraded, the flight got re-coded as a VS flight, but kept original DL G booking class. VS G fares are an award fare class and hence the system would reject it for mileage earning.