Sachverhalt: A. Frau A._ ist ledig und allein erziehende Mutter eines minderjährigen Sohnes, Jahrgang 1997. Sie wohnt in C._. Für das Steuerjahr 2001 wurde sie am 27. August 2002 mit einem steuerbaren Einkommen von Fr. 58'600.-- und einem steuerbaren Vermögen von Fr. 36'000.-- veranlagt. Gegen die Veranlagungsverfügung erhob sie am 13. September 2002 Einsprache beim Kantonalen Steueramt. Sie machte geltend, die st. gallische Regelung der Besteuerung von Einelternfamilien verstosse gegen Art. 11 des Bundesgesetzes über die Harmonisierung der direkten Steuern der Kantone und Gemeinden vom 14. Dezember 1990 (Steuerharmonisierungsgesetz, StHG; SR 642.14). Die Bestimmung sehe vor, dass die Steuer für Alleinerziehende gleich ermässigt werden müsse, wie das für verheiratete Personen im Vergleich zu allein stehenden Steuerpflichtigen der Fall sei. Es sei die Rechtsgleichheit in der Besteuerung einer Einelternfamilie mit einem Kind gegenüber eine Zweielternfamilie mit einem Kind herzustellen. Der Einelternabzug von Fr. 3'000.-- bis maximal Fr. 5'000.-- gemäss Art. 48 Abs. 1 lit. c des Steuergesetzes des Kantons St. Gallen vom 9. April 1998 (StG/SG) sei ungenügend. Das Kantonale Steueramt wies die Einsprache am 14. Mai 2003 ab. Gegen den Einspracheentscheid führte Frau A._ Rekurs bei der Verwaltungsrekurskommission des Kantons St. Gallen. Die Verwaltungsrekurskommission wies mit Entscheid vom 7. Januar 2004 den Rekurs ab. Sie erwog, Art. 11 StHG sei verfassungswidrig, weil er in die durch Art. 129 Abs. 2 Satz 2 BV den Kantonen vorbehaltene Tarifhoheit eingreife. Dennoch müsse Art. 11 StHG angewendet werden (Art. 191 BV). Der Verfassungswidrigkeit sei indessen insofern Rechnung zu tragen, als Art. 11 StHG unter Berücksichtigung der ratio legis möglichst verfassungsmässig auszulegen sei. Art. 11 Abs. 1 StHG lasse nach seinem Wortlaut keine unterschiedlichen Tarife zwischen Ein- und Zweielternfamilien zu. Jedoch sei der Gleichstellung nicht isoliert beim Tarif Rechnung zu tragen. Vielmehr seien alle Faktoren zu berücksichtigen, welche die Steuerlast beeinflussen würden. Der Doppeltarif des alten Rechts, welcher die Einelternfamilie dem Ehepaar mit Kind gleichgestellt habe, sei sachlich nicht begründbar gewesen, weil er der unterschiedlichen wirtschaftlichen Leistungsfähigkeit nicht Rechnung getragen habe. Der neue Einheitstarif (mit Vollsplitting für gemeinsam steuerpflichtige Ehegatten), wie er im neuen Steuergesetz ab 2001 enthalten sei, trage dem verfassungsmässigen Prinzip der Besteuerung nach der wirtschaftlichen Leistungsfähigkeit besser Rechnung. B. Eine Beschwerde von Frau A._ hiess das Verwaltungsgericht des Kantons St. Gallen mit Entscheid vom 6. Juli 2004 gut und hob den Entscheid der Verwaltungsrekurskommission vom 7. Januar 2004 sowie den Einspracheentscheid und die Veranlagungsverfügung auf (vgl. StE 2004 B 29.3 Nr. 24). Im Sinne eines Zwischenergebnisses stellte das Verwaltungsgericht fest, dass auf der Grundlage der allgemein anwendbaren Auslegungsmethoden und -kriterien Art. 11 Abs. 1 StHG so zu verstehen sei, dass die Kantone allein erziehenden Personen exakt die gleiche steuerliche Ermässigung zu gewähren hätten wie verheirateten Steuerpflichtigen. Insofern erweise sich die st. gallische Regelung, welche den gemeinsam steuerpflichtigen Ehegatten und nur diesen das Vollsplitting gewähre (Art. 50 Abs. 3 StG/SG), als harmonisierungswidrig. Zu prüfen bleibe das Argument der Verwaltungsrekurskommission und des Kantonalen Steueramtes, wonach Art. 11 Abs. 1 StHG verfassungskonform auszulegen sei. Die in Art. 11 Abs. 1 StHG vorgeschriebene tarifliche Gleichbehandlung von Einelternfamilien und Zweielternfamilien sei mit den verfassungsrechtlichen Grundsätzen der Rechtsgleichheit und der Besteuerung nach der wirtschaftlichen Leistungsfähigkeit nicht zu vereinbaren. Die Vorschrift erweise sich als verfassungswidrig. Indessen gebiete Art. 191 BV auch die Anwendung von verfassungswidrigen Bundesgesetzen. Angesichts des klaren Wortlauts und des vom (historischen) Gesetzgeber gewollten Sinns von Art. 11 Abs. 1 StHG bleibe kein Raum für eine verfassungskonforme Auslegung. Da somit die st. gallische Regelung im Widerspruch zu Art. 11 Abs. 1 StHG stehe, sei sie nicht anwendbar. Das Steuerharmonisierungsgesetz enthalte in Tariffragen keine genügend bestimmte, direkt anwendbare Vorschrift (Art. 72 Abs. 2 StHG). Der Regierungsrat müsse daher die erforderlichen vorläufigen Vorschriften erlassen. C. Mit Verwaltungsgerichtsbeschwerde beantragt das Kantonale Steueramt St. Gallen, der Entscheid des Verwaltungsgerichts vom 6. Juli 2004 sei aufzuheben und die Veranlagung gemäss Veranlagungsverfügung vom 27. August 2002 und Einspracheentscheid vom 14. Mai 2003 sei wiederherzustellen. Die Beschwerdegegnerin (Steuerpflichtige) und das Verwaltungsgericht des Kantons St. Gallen beantragen, die Verwaltungsgerichtsbeschwerde sei abzuweisen. Die Eidgenössische Steuerverwaltung schliesst auf Gutheissung der Beschwerde. 