You're probably correct on all points. Communists would support homosexuals marching against the church because Marxist hate Christianity. The church teaches that God is supreme. Communism (and Humanism) teaches that man can make his own utopia here on earth, and writes his own laws.
The irony is that Che Guevara helped create one of the most oppressive governments against homosexuals in Cuba.