Sum two integers, unless they are the same, in which case return double their sum
The existing answers mostly have just said is is wrong here. Which it undoubtedly is.
The reason it's bad to use here is if you pass 257 and above, or -6 and below, you may get incorrect output.
The best way to show how it's bad is to ask you what the output of the following are:

sum_double(2, 2)
sum_double(1 + 1, 2)
sum_double(257, 257)
sum_double(256 + 1, 257)


Simple! Surely it's 8, 8, 1028 and 1028, right?
No, it's actually, 8, 8, 1028 and 514.
This is known and expected behaviour:


  The current implementation keeps an array of integer objects for all integers between -5 and 256,
  when you create an int in that range you actually just get back a reference to the existing object.


Other than that both are fine, and I wouldn't really fret over which is 'better', this is as both are clear and understandable.
Which is all your code needs to be.
A function that would be un-pythonic, as it's not clear could be:

def sum_double(a, b):
    return (a + b) * ((a == b) + 1)