Forgive me if you know most of this already.
Automatically Generated ID number
Is this the autonumber you're referring to? If yes, you are not going to use that as meaningful info, correct? It is only providing uniqueness to each record and for relating to other related tables.
When they joined should go in tblMembers.
A related table for joining methods - yes, because there can be more than one possible value for the "joining" type. Otherwise you'd need a field in tblMembers for each type - not good.
No to the yes/no field to mark as joined by letter. That will come from tblJoinTypes.
Yes to a table of Churches - as a lookup table (not the same as a lookup field). Not sure what you mean by church demographics but I suspect those fields should be part of the church records. IF you care to know about each of the churches a member may have belonged to at one time or another, you'll need a table to handle that many-to-many relationship with junction table.
Probably would need tblBaptisms as well.
As for tblFamily - I don't think so but not sure of its exact purpose. If the family members are church members they probably should go into tblMembers. If they are not members, then I might rethink/rename tblMembers so that it encompasses family members as well. Then perhaps a field to denote a record as a member or not. That might be best as a date field. If it's Null, they are not. If there is a date, it flags them as a member as well as the date they joined. IMO, Yes/No fields are seldom better than date fields for things like this.
Not sure what Pastor/usher is either. If they can only have one role at any time, it can be in tblMembers. You might want tblRoles for this and keep the PK value from roles in tblMembers. Again, if you want their role history or if they can hold more than one role at a time you will need another junction table for that.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.