I agree with others that the corniness is the main difference. If it has corn in the recipe, or tastes like corn, it's cream ale. If not, it's blonde ale. To me that also means that even if the recipe does not contain corn, but tastes like DMS, it's a cream ale, and conversely, if it does contain corn but you can't taste corn or DMS, it *could* be considered a blonde ale, but by recipe it's still actually a cream ale!
Splitting hairs indeed. Now determine definitively the differences between American Stout and Robust Porter, and, if you dare, "Black IPA". Pretty dang vague differences if you ask me, especially if you bring historical definitions into play. Try setting a good commercial example of each in front of you, blindfolded, and explain which one is which style definitively and why. Depending a little on the specific examples chosen, you very likely won't be able to tell which one is considered which style with 100% accuracy. Why not? Splitting hairs, indeed.