Sachverhalt: A. A.X._ ist Inhaber einer Einzelfirma im Bereich Journalismus/Mediaconsulting. Seine Ehefrau B.X._ ist bei der Z._ AG angestellt. Trotz wiederholter Mahnungen und Bussen von Fr. 3'000.-- und Fr. 5'000.-- wegen Verletzung von Verfahrenspflichten reichten die beiden Steuerpflichtigen die Steuererklärungen 2003 und 2004 nicht ein, worauf sie am 29. März 2006 vom Steueramt St. Gallen ermessensweise veranlagt wurden (Staats- und Gemeindesteuern 2003 und 2004: steuerbares Einkommen je Fr. 207'000.--, steuerbares Vermögen je Fr. 107'000.--; direkte Bundessteuer 2003 und 2004: steuerbares Einkommen je Fr. 198'500.--). Gegen die ihnen am 3. April 2006 eröffneten Veranlagungen der Staats- und Gemeindesteuern erhoben die Steuerpflichtigen am 6. Mai 2006 Einsprachen. Das kantonale Steueramt St. Gallen trat auf diese wegen Verspätung nicht ein. Einen gegen diesen Nichteintretensentscheid gerichteten Rekurs wies die Verwaltungsrekurskommission des Kantons St. Gallen ebenso ab wie das zugleich gestellte Gesuch um Wiederherstellung der versäumten Einsprachefrist. Das Verwaltungsgericht des Kantons St. Gallen wies die von den Steuerpflichtigen gegen diesen Entscheid gerichtete Beschwerde ab, soweit es darauf eintrat. B. Mit Beschwerde in öffentlich-rechtlichen Angelegenheiten vom 14. August 2007 beantragen die Steuerpflichtigen dem Bundesgericht, die Einsprachefrist der Veranlagungen 2003 und 2004 wieder herzustellen und das kantonale Steueramt anzuweisen, die Einsprache gegen die Veranlagung der Jahre 2003 und 2004 materiell zu behandeln. Das Kantonale Steueramt und die Eidgenössische Steuerverwaltung (betreffend die direkte Bundessteuer 2003 und 2004) schliessen auf Abweisung der Beschwerde. Das Verwaltungsgericht des Kantons St. Gallen beantragt, die Beschwerde abzuweisen, soweit darauf einzutreten sei.