If casing matters for your output (and it usually does), the best way to handle this is to loop through the query and create the data that needs to be serialized manually.
I recommend overriding renderWith's auto stuff by creating an override template at views/users/show.json.cfm (or whatever), then loop through the query manually to create the data struct that needs to be serialized. Then output the data serialized as JSON (or whatever you need).
Example view:
<cfset usersData = []>
<cfloop query="users">
<cfset user = {}>
<cfset user["firstName"] = users.firstName>
<cfset user["lastName"] = users.lastName>
...etc...
<cfset ArrayAppend(usersData, user)>
</cfloop>
<cfoutput>#SerializeJson(usersData)#</cfoutput>