Sachverhalt: A. Mit Verfügungen vom 23. November 2006 und 25. Januar 2007 sprach die IV-Stelle des Kantons St. Gallen dem 1949 geborenen D._ bei einem Invaliditätsgrad von 40 % ab 1. Februar 2002 bis 31. Dezember 2003 eine halbe Härtefallrente und ab 1. Januar 2004 eine Viertelsrente zu. B. Die dagegen erhobene Beschwerde wies das Versicherungsgericht des Kantons St. Gallen bei einem auf 46 % bemessenen Invaliditätsgrad mit Entscheid vom 22. April 2008 ab. C. D._ lässt Beschwerde in öffentlich-rechtlichen Angelegenheiten erheben und beantragt Zusprechung einer halben Rente ab 1. Februar 2002. Vorinstanz und Verwaltung schliessen auf Abweisung der Beschwerde. Das Bundesamt für Sozialversicherungen verzichtet auf Vernehmlassung. 