Please note my original code, specifically this line:
typeValues =
PhoneNumbersGridView.DisplayLayout.ValueLists.Add(
Guid.NewGuid().ToString()
);
Notice that i'm not creating an empty value list via its constructor, I'm using the ValueLists collection on DisplayLayout to create it.
I don't see anywhere that you add claimStatusValueList to grid.DisplayLayout.ValueLists.. this may be your problem.