SQL Server 2008 - updates a column based on a column of similar row grouping

I am looking for a single update statement if possible.

Consider:

rsvpgroup   |   personid | isVip | firstname | lastname |   type
------------------------------------------------------------------
1                100         1       bob         smith     leader
1                101         0       john        doe       guest
1                102         0       sara        jones     guest
2                200         0       tom         ohara     leader
2                201         0       jane        doe       guest

I need to update isVIP for guest in an rsvp group if their "leader" isVip=1

So in this scenario rows, 2 and 3 above will be updated from 0 to 1. Rows 4, 5 will remain unchanged


UPDATE  a
SET     a.isVip = 1
FROM    TableName a
        INNER JOIN TableName b
            ON  a.rsvpgroup = b.rsvpgroup AND
                b.[type] = 'leader' AND
                b.isVip = 1
WHERE   a.[type] = 'guest'

OUTPUT after update statement has been executed

╔═══════════╦══════════╦═══════╦═══════════╦══════════╦════════╗
║ RSVPGROUP ║ PERSONID ║ ISVIP ║ FIRSTNAME ║ LASTNAME ║  TYPE  ║
╠═══════════╬══════════╬═══════╬═══════════╬══════════╬════════╣
║         1 ║      100 ║     1 ║ bob       ║ smith    ║ leader ║
║         1 ║      101 ║     1 ║ john      ║ doe      ║ guest  ║
║         1 ║      102 ║     1 ║ sara      ║ jones    ║ guest  ║
║         2 ║      200 ║     0 ║ tom       ║ ohara    ║ leader ║
║         2 ║      201 ║     0 ║ jane      ║ doe      ║ guest  ║
╚═══════════╩══════════╩═══════╩═══════════╩══════════╩════════╝