¿Cómo consigo que ElementTree de Python se imprima en un archivo XML?

Antecedentes

Estoy usando SQLite para acceder a una base de datos y recuperar la información deseada. Estoy usando ElementTree en Python versión 2.6 para crear un archivo XML con esa información.

Código
import sqlite3
import xml.etree.ElementTree as ET

# NOTE: Omitted code where I acccess the database,
# pull data, and add elements to the tree

tree = ET.ElementTree(root)

# Pretty printing to Python shell for testing purposes
from xml.dom import minidom
print minidom.parseString(ET.tostring(root)).toprettyxml(indent = "   ")

#######  Here lies my problem  #######
tree.write("New_Database.xml")
Intentos

He intentado usartree.write("New_Database.xml", "utf-8") en lugar de la última línea de código anterior, pero no editó el diseño del XML en absoluto, sigue siendo un desastre.

También decidí juguetear e intenté hacer:
tree = minidom.parseString(ET.tostring(root)).toprettyxml(indent = " ")<br> en lugar de imprimir esto en el shell de Python, lo que da el errorAttributeError: el objeto 'unicode' no tiene el atributo 'write'.

Preguntas

Cuando escribo mi árbol en un archivo XML en la última línea, ¿hay alguna manera de imprimir bastante en el archivo XML como lo hace en el shell de Python?

Puedo usartoprettyxml() aquí o hay una manera diferente de hacer esto?

Respuestas a la pregunta(4)

Su respuesta a la pregunta