Hi Michael,
You are assigning the default value as '' which is a blank string but NOT equal to NULL. One quick check to see if the value is really null, is to check the default setting in the Studio for displaying null value preference (which is "?" ) and see if you can see "?" in the query result for the column containing NULL values.
Since your value is not being displayed as ? (or your preferred way of displaying null), it may not be NULL at all. You can check the same query with where condition as
WHERE BUDGET_ASSIGNED = '' -- (Same as defined in the default value)
Regards,
Ravi