I guess im late to the party, but I just want to pitch in my 2 cents.
The best way to do incest without so much hassle is to just do a incest patch. 2 ways you can do incest patch.
1. Write the base script without incest, but make a patch with a new script that contains incest. DO NOT just use word replacement if you go with this. You must write new dialogues when it is appropriate.
2. Write the base script with incest. This script file is the incest patch. Now use word replacement mom = landlady, sis = roomate, etc etc. This is the game without the patch. It will sound absurdly stupid, but everyone knows already that landlady and roommates are code words for incest and will go look for the patch on their own.
Doing #1 will make the non incest version more coherent and playable, but it takes more time to write both scripts in a way that makes sense. Doing #2 will make non incest nearly unplayable, but you only have to write one script.
Edit: There is a third way. Write the base script without incest. Then use word replacement to make the incest patch (replace landlady with mom, etc). This is essentially what user defined relations are. Some devs even have a patch that uses this method. This method sucks ass. it's nearly impossible to write a single script that will make sense on both incest and non-incest version. The result is that both versions become retarded. Don't do it this way.