It appears that "'" is being considered as a whitespace (and perhaps other
punctuation, haven't checked myself):
initcap(text) " Convert first letter of each word (whitespace-separated) to
upper case "
Sample SQL: select initcap('grahm''s little angel');
Incorrect Result (Note capital S): 'Grahm'S Little Angel'
Postgresql Version: 7.4.5