Sorry I'm late to the discussion, but let me give you some answers.
No, you can't implement a straight -X happiness for a building, regardless of whether you make it unmodded or not, because the XML in the Buildings table simply isn't capable of recognizing negative numbers. You can take the Wonder path to increase overall unhappiness by a certain percentage, but a straight one-shot happiness penalty can't be done through the Buildings declaration.
However, it CAN be done through Policies. Unlike the building happiness declarations, which have to be positive, the "+1 happiness per University" sort of policy CAN be inverted, to where all buildings of a specific type can add Unhappiness instead of Happiness. My own mods have done exactly this; all players are given a certain hidden Policy that adds Unhappiness for a half-dozen or so buildings. So, each Genejack Factory might give -2 Happiness when built (to offset its huge production boost); the Building declaration doesn't do that, but the hidden Policy does, and the end result is a nicely balanced building that you can choose not to build if you're short on Happiness.
This has a few issues to keep track of, though:
1> The UI isn't really built for it, but that's an easy change. The first thing I did in my mods was change the various UI elements to allow for the possibility of negative happiness. So, instead of saying "(smiley) +-1" it'll say "(frown) -1". This sort of change is useful even if you're not going to bother with the rest, though.
2> Adding a hidden policy adds a number of new problems. First, that policy needs to be placed in a Branch. If you place it into one of the ten existing branches, then the player will be just fine, but the AI will prioritize that now-opened branch over all others. If you place it into a new eleventh branch, then the UI logic will break. And, that new eleventh branch will also have AI issues, although that's avoidable if you make multiple exclusive policies within that branch and then increase the AI branch cap from 2 to 3. Plus, you need to add Lua logic to give that policy to the players on the first turn, and ensure the AI doesn't lock up in indecision (and yes, that can happen).
3> The AI can handle it in most cases, as Flavor values can be negative, but an AI at zero Happiness will still build the thing, even if the unhappiness penalty would be far more crippling than the benefits of the building. Normally the AI has strong overrides to prevent itself from going negative on Happiness, but this mechanism avoids those checks. It's made worse since a smart human player will simply avoid building the buildings until he has a nice buffer to work with, whereas AI Flavor ratings are an always-on thing. (That is, a building that's good to build now will pretty much always be seen as good to build.)
In other words, you shouldn't put negative-happiness buildings in the part of the tech tree where the players are always low on Happiness and trying to settle new cities before unlocking new Happiness-producing structures (i.e., the Classical Era). They work just fine in later eras, where adding new Happiness is easy.
However, this sort of hidden policy mechanism is useful for all sorts of other stuff. For instance, in my Mythology mod I actually had five hidden policies, depending on which Era you were in. That way, certain buildings automatically get stronger as the game goes on, while others get weaker over time. So you can add all sorts of other benefits to these hidden policies, to do things not possible through the simple Building XML tables.
At the moment my mods aren't available, due to some coding issues, but I'm hoping to have them back online within the next week or two. Then, you'd be able to see what I'm suggesting. (I've also adding things like Happiness-producing Specialists, so what I've got is a lot more complex than the core game allows.)