También puedes hacer tu CursorAdapter a pelo e implementar el newView y el bindView (que es lo mismo que el getView que querías) que igual hasta te resulta más fácil de integrar el array de estados de cada item.
El SimpleCursorAdapter a veces limita bastante y aquí necesitas juntar dos fuentes de datos (el cursor de la base de datos y una estructura local con el estado seleccionada o no) y hacer más cosas que simplemente cambiar el texto de un TextView.