One way to get heterochromia is to have somebody punch you in the eye as a kid. That seems to be what happened to David Bowie, who got popped at age 12 in a dispute over a girl. In many such cases the iris of the popped eye gets darker. In Bowie's case the pupils are also of noticeably and, dare I say, eerily different sizes. I don't claim there's any connection with his career, but you can imagine Dave looking in the mirror and thinking, This is not the face of a guy who was meant to drive a beer truck.
Eye color is mainly a function of the pigment melanin.
If your eyes have a lot of it, they're brown. If they don't, they're blue. Green eyes result from yellowish flecks of fatty pigment against a dark background. Some men think a green-eyed woman is exotic. The truth is she's got fat eyes.