I would place the level of politeness as follows:
May I ... most polite; use only with a pope, or royalty, or high government officials, or in English class.
Could I ... "special" polite; can be used with anyone you don't know in
public places such as restaurants, but it is not required. "Can I
..." will do as well in many cases. ("Could I ..." is for a more
expensive restaurant, let's say!)
Can I ... everday polite; can be used with anyone at any time.
I realize that this contrasts with the advice of others above, but it
is what I observe in the speech of native speakers in California.
The use of "may" among 99.9% of people I know is restricted to the
meaning "it is possible that", i.e., a near-synonym of "might".
CJ