I have tried this method out and it works fine. Here is the new trigger.

Code:
;------------------------------------------
Trigger Greek_Cities_Win_Trigger
    WhenToTest SettlementTurnStart

    Condition SettlementIsLocal
        and SettlementName Sparta
        and I_LocalFaction greek_cities
	and not SettlementBuildingExists = victory_memorial
        and I_SettlementOwner Athens = greek_cities

    AdviceThread Greek_Cities_Win_Thread  1
Now, in addition to triggering the victory scroll the script creates a unique building, victory_memorial, in Sparta. Note that I had to change the WhenTotest to SettlementTurnStart rather than FactionTurnStart, so that I could use the SettlementBuildingExists test.