No me agrada mucho el código de la función ExisteFrm, porque lo que te pide es el objeto creado como parámetro, si lo tienes que pasar significa que ya lo has creado o estas enviando una variable con un puntero a las nubes...
Yo te recomendaría hacer una función como esa, pero que reciba un tipo TFormClass (clases por referencia), y preguntes si los forms no son de esta clase.
Esto que te comento fallará si tienes forms heredados y creas instancias en diferentes jerarquías, cosa que es muy poco probable.
Saludos!