• Here is an alternate version using a Tally table.

    DECLARE@SelectedDateDATE = '2012-02-01' --GETDATE()

    DECLARE@DesiredDayTINYINT = 5

    SELECTTOP 1 NextDay, DATENAME(WEEKDAY, NextDay) AS NameOfDay

    FROM(

    SELECTDATEADD(DAY, N, @SelectedDate) AS NextDay

    FROMTally

    WHEREN <= 14

    ) x

    WHEREDATEPART(WEEKDAY, NextDay) = @DesiredDay

    ORDER BY NextDay

    It should be easy to turn into a function.